如何从CustomView启动新活动?

时间:2014-05-08 11:49:51

标签: java android android-layout android-activity android-custom-view

通常您会使用以下内容开始活动:

private void llMenuSettings_Click() {
     this.runOnUiThread(new Runnable() {
          public void run() {
               Intent intent = new Intent(XXXXXXXX.this, View_Settings.class);
               startActivity(intent);
               XXXXXXXX.this.finish();
          }
     });
}

但是我正在扩展LinearLayout:

public class MenuContainer extends LinearLayout {
}

因此我遇到了几个问题:

  1. 您如何知道XXXXXXXX在示例中的含义,因为LinearLayout可以包含在多个布局中?
  2. 在LinearLayout类中不存在startActivity()?
  3. 有一些类似的问题,但没有一个能完全回答上述情况,因此希望将来可以回答并帮助其他人吗?

1 个答案:

答案 0 :(得分:3)

LinearLayout扩展类中,您可以创建以下方法:

public void launch() {

    Intent i = new Intent(getContext(), YourActivity.class);
    getContext().startActivity(i);
}

使用自定义视图中的getContext()方法检索Context并开始新的Activity