-2

次のように TextView フィールドからテキストを取得しようとしています:

<TextView
        android:id="@+id/text_random_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:padding="@dimen/padding_medium"
        android:text=""
        android:textColor="#FF8800"
        android:textSize="30dp"
        tools:context=".ImHungry" />

私が使用しているコマンドは次のとおりです。

final Button button2 = (Button) findViewById(R.id.button2);
            button2.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    String search = R.id.text_random_text.getText().toString(); 
                    Uri uri = Uri.parse("http://www.google.com/#q=" + search); 
                    Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
                    startActivity(intent); 

次のようなエラーが発生しているようです: プリミティブ型 int で getText() を呼び出すことはできません

私はこれに慣れていないので、助けていただければ幸いです。ありがとう!

4

3 に答える 3

1

R.id.text_random_textTextView の int id です。

次のようなことをする必要があります:

public class Blah extends Activity implements OnClickListener {
    TextView tv;

    @Override
    public void onCreate(Bundle b) {
        // blah blah
        tv = (TextView) findViewById(R.id.text_random_text);

         // blah blah

    }

    @Override
    public void onClick(View v) {
        if (v.getId() == yourButtonsID)
        {
            String search = tv.getText().toString();
            // whatever you wanna do
        }
    }
}
于 2012-09-04T02:57:12.070 に答える
0

あなたはから文字列を取得しようとしています

R.id.text_random_text これは整数値に他なりません。TextViewの文字列を取得するには、これを行う必要があります。

 TextView tv = (TextView) findViewById(R.id.text_random_text)

その後、

 button2.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    String search = tv.getText().toString();
于 2012-09-04T03:06:53.123 に答える
0

getText()タイプからはできませんint

あなたがする必要があるのはTextView変数を作ることです

TextView random_text = (TextView) findViewById(R.id.text_random_text);

次に、あなたのonClickListenerプットで:

String search = random_text.getText().toString();
于 2012-09-04T02:56:47.140 に答える