我在主要(活动)上创建了一个按钮。我设置了onClick()方法来确定按钮的操作。我想在单击按钮时显示另一个视图。 android:onclick("")调用使用字符串参数。我怎样才能参考其他观点?我已经构建了它的xml活动和内容文件,并且将java文件正确放在一起并在我的sdk上进行测试才能正常工作。但是,我应该如何调用新对象的视图?我尝试调用getApplication()但它崩溃了应用程序。 我会感激任何帮助。
这是我试过的:
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), "I'm clicked!", Toast.LENGTH_SHORT).show();
AppActivity app = new AppActivity();
getApplicationContext().stopService(new Intent());
app.getApplicationContext().startActivity(new Intent());
}
答案 0 :(得分:1)
您必须将当前活动context
保存在某处,然后使用它来调用新活动:
private Context ctx;
public Class CurrentActivity extends Activity{
// let's save it in your onCreate method
onCreate(Bundle savedBundleState){
ctx = this;
}
// now on your onClick method
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(ctx, "I'm clicked!", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(ctx, AppActivity.class);
ctx.startActivity(intent);
}
}
答案 1 :(得分:1)
如果您想更改活动,请使用以下命令:
Intent myIntent = new Intent(this, AvitivityName.class);
startActivity(myIntent);
如果您只想更改观看次数,请使用:
setContentView(R.layout.myXML);
在onCreate
中。
如果您想在活动之间传递数据,请使用putExtra
和getExtra
:
Intent i=new Intent(context,SendMessage.class);
i.putExtra("Hi", user.getUserAccountId()+"");
context.startActivity(i);
并得到:
Intent i= getIntent();
i.getExtra("Hi");
如果这有帮助,请告诉我。