2016-02-17 7 views
-2

У меня есть EditText, TextView и Кнопка. Пользователь вводит номер в EditText. Затем я хочу, чтобы его разделили на 100, как только пользователь нажмет на кнопку и отобразит ответ в текстовом редакторе TextView.Android - Сделайте простой расчет

Вот мой макет (activity_main.xml)

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".MainActivity"> 


<EditText 
    android:id="@+id/tv_numb" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="77dp" 
    android:hint="Provide a number"/> 

<Button 
    android:id="@+id/btn_doCalc" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Calculate" 
    android:layout_below="@+id/tv_numb" 
    android:layout_centerHorizontal="true" /> 

<TextView 
    android:id="@+id/tv_answer" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/btn_doCalc" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="50dp" 
    android:textSize="30sp" 
    android:text="Answer" /> 

MainActivity.java

public class MainActivity extends ActionBarActivity { 

private EditText editTextNumb; 
private Button buttonCalc; 
private TextView tvAnswer; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    editTextNumb = (EditText) findViewById(R.id.tv_numb); 
    buttonCalc = (Button) findViewById(R.id.btn_doCalc); 
    tvAnswer = (TextView) findViewById(R.id.tv_answer); 

    //I think this is where my problem is------- 
    final int result = (editTextNumb.getText().toString())/100; 
    // 

     buttonCalc.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 

       tvAnswer.setText(result); 

      }}); 
    } 

} 

Любая помощь будет оценена.

+1

Помогите сделать что? Вы не указали нам свой код и не объяснили, с какой проблемой вы столкнулись. Без какого-либо контекста относительно того, на что вы застряли, нам не удастся спрятать вас. – azurefrog

+1

Добро пожаловать в переполнение стека! См. [Как спросить] (http://stackoverflow.com/help/how-to-ask) и [Минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve). – radoh

ответ

3
Button mButton; 
EditText mEdit; 

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    mButton = (Button)findViewById(R.id.button); 
    mEdit = (EditText)findViewById(R.id.edittext); 

    mButton.setOnClickListener(
     new View.OnClickListener() 
     { 
      public void onClick(View view) 
      { 
       try 
       { 
       int result = Integer.parseInt(mEdit.getText().toString())/100; 
       // show it to them 
       Log.v("EditText", "result is "+result); 

       Toast.makeText(getApplicationContext(),"result is "+result,  
           Toast.LENGTH_LONG).show(); 
       } 
       catch (final NumberFormatException e) 
       { 
        // tell them they didnt enter a valid number 
       Toast.makeText(getApplicationContext(),"Please Enter a valid number",  
           Toast.LENGTH_LONG).show(); 
       } 
      } 
    }); 
} 
+0

У меня возникла ошибка «Неверный тип второго аргумента» с Log.v («EditText», result); –

+0

@ H.Brooks, пожалуйста, проверьте edit –

+0

ah great, и как я могу отобразить его на экране, в настоящее время он отображается только в журнале, а не в эмуляторе. –

 Смежные вопросы

  • Нет связанных вопросов^_^