0

をクリックして新しいアクティビティを開始する必要がありTextViewます。私のコード:

txtFirst = (TextView) findViewById(R.id.textView3);
txtFirst.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        if (indTxt == 3) {
            Intent intent = new Intent (this, ActSecond.class);
            startActivity(intent);
        }
    }
});

Ctrl+ Shift+を押しOましたが、Eclipseに次のエラーが表示されます。

スクリーンショット

この行で:

Intent intent = new Intent (this, ActSecond.class);
startActivity(intent);

後:

super.onCreate(savedInstanceState);
setContentView(R.layout.main);

その後、すべてが良いです...

4

2 に答える 2

3

thisこれはクラスを参照しているのではなく、OnClickListenerを参照しているので、次を試してください。

Intent intent = new Intent(ActFirst.this, ActSecond.class);

ActFirst(それがあなたのクラスの名前であると仮定します。)


また、これをまだ行っているかどうかはわかりませんがclickable、OnClickListenerが機能する前にTextViewを設定する必要があります。

XMLのいずれか:

android:clickable="true"

またはJava:

txtFirst.setClickable(true);
于 2012-11-09T17:46:45.470 に答える
2

ビューコンテキストの代わりに現在のアクティビティまたはアプリケーションコンテキストを最初のパラメーターとしてインテントコンストラクターthisに渡します(現在、ビューコンテキストをインテントコンストラクターに渡そうとしています)。

Intent intent = new Intent (Current_Activity.this, ActSecond.class);
startActivity(intent);

それ以外の

Intent intent = new Intent (this, ActSecond.class);
startActivity(intent);
于 2012-11-09T17:47:57.497 に答える