1

嗨,我是一个完全的 android 新手,所以我的问题可能看起来很愚蠢。

我想制作一个有两个活动的程序,其中一个是 TinyCalActivity1,另一个是 TinyCalActivity2。

我的意图是我可以制作一个按钮来在这个活动之间切换,

package my.app.tinyCal;

    public class TinyCalActivity1 extends Activity {
    /** Called when the activity is first created. */

    Button myButton;
    EditText myEdit;
    //Intent i = new Intent(TinyCalActivity1.this, TinyCalActivity2.class);
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        myButton = (Button)findViewById(R.id.Next);
        myEdit = (EditText)findViewById(R.id.entry);
        CharSequence thisNum = "1234565";
        myEdit.setText(thisNum);

        OnClickListener myListener = new OnClickListener(){
            public void onClick(View v){
            }
        };

        myButton.setOnClickListener(myListener);
    }
}

和 TinyCalActivity2。

但是,当我编写此行并在我的 android AVD 中运行时,它告诉我有一个错误。

Intent i = new Intent(this, TinyCalActivity2.class);

eclipse中没有错误提示,我不知道为什么。我将 TinyCalActivity2.java 创建为与 TinyCalActivity1.java 文件位于同一文件夹中的单独文件。我已经在我的 AndroidManifest.xml 中注册了 TinyCalActivity2。

我真的很感激任何帮助!

4

2 回答 2

0

如果你把你的代码

Intent i = new Intent(this, TinyCalActivity2.class);

在按钮单击事件中,则this指的是按钮而不是 ACTIVITY。因此,您需要将其提及为

Intent i = new Intent(TinyCalActivity1.this, TinyCalActivity2.class);

这可能会解决问题

于 2013-07-10T04:12:04.210 回答
0

你可以试试这个方法。

myButton.setOnClickListener(new OnClickListener(){
            public void onClick(View v){
            Intent i = new Intent(this, TinyCalActivity2.class);
            finish();
            }
        };
于 2013-07-10T04:35:20.940 回答