1

こんにちは、私はAndroid開発に本当に慣れていません。入力(整数)をセンチメートルに変換し、通常のテキスト(テキストビュー)として表示するアプリを開発しています。しかし、Edit-Text に何を入力しても取得できません。xml と Java コードを投稿しています。

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"  
>

    <EditText
        android:id="@+id/edittext1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"    
        android:hint="@string/Hint1"
        android:inputType="number" />

    <Button
        android:id="@+id/Convert"
        android:text="@string/Convert"
        android:layout_width="250dp"
        android:layout_height="wrap_content"        
        android:layout_gravity="center"
        android:gravity="center"
        android:textSize="30sp"
    />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/Result" 
       android:textSize="30sp"
     />

</LinearLayout>

* Java コード: *

public class MainActivity extends Activity
{   
    TextView textView1 = null;
    EditText edittext1 = null;
    int no2 = 0;
    int centimeters1 = 0;
    String text1 ="ssssss";
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); 

        edittext1 = (EditText) findViewById(R.id.edittext1);
        textView1 = (TextView) findViewById(R.id.textView1);    
        text1 = edittext1.getEditableText().toString().trim();
        System.out.print(text1);
        System.out.print(".................................................");

        centimeters1= no2* 24 ;
        Button button1 = (Button) findViewById(R.id.Convert);

        button1.setOnClickListener(new View.OnClickListener()
        {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                textView1.setText("Your Total is:" + text1);
            }

        });

    }

値をトレースできるように「system.out.println」を使用しようとしましたが、機能しませんでした (エミュレーターで値を入力した後にこれを実行すると、「Your Total Is:」だけが表示され、他には何も表示されません)。よろしくお願いします。これで私を助けてください。

4

6 に答える 6

4
 text1 = edittext1.getEditableText().toString().trim();

これらのコードを OnClickListener 内に記述してください。

于 2013-04-02T13:32:44.843 に答える
4

setContentView() の後に edittext を取得しています。text1 = edittext1.getEditableText().toString().trim(); を移動します。ボタンの onclick メソッドに。そのため、ユーザーが editext を入力してボタンをクリックすると、値が textview に設定されます。

button1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        text1 = edittext1.getEditableText().toString().trim();
        textView1.setText("Your Total is:" + text1);
    }
});
于 2013-04-02T13:38:27.093 に答える
0

これを試して、編集テキスト値を常に文字列にします。その編集テキスト値を整数に割り当てたい場合は、文字列を整数に変換することを意味します(あなたへの情報です)..ここにあなたの質問に対する答えがあります..

 String str = edittext.gettext.tostring;
Textview1.settext(''your total is''+str);
于 2013-04-02T14:01:51.507 に答える