在Android

时间:2016-04-01 22:10:02

标签: android

我在主要(活动)上创建了一个按钮。我设置了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());
}

2 个答案:

答案 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中。

如果您想在活动之间传递数据,请使用putExtragetExtra

Intent i=new Intent(context,SendMessage.class);
i.putExtra("Hi", user.getUserAccountId()+"");
context.startActivity(i);

并得到:

Intent i= getIntent();
i.getExtra("Hi");

如果这有帮助,请告诉我。