【问题标题】:Android app stops when navigatingAndroid 应用程序在导航时停止
【发布时间】:2017-02-17 06:07:44
【问题描述】:

我是 android 新手,当我单击导航按钮时,我的应用程序失败或停止工作,该按钮应将我引导至另一个活动。这是我导航到下一个活动的代码。

public void checkout(View view) {
      Intent intent = new Intent(this, SelectedItemsControl.class);
      startActivity(intent);
}

我的 SelectedItemsControl.class 代码:

public class SelectedItemsControl extends AppCompatActivity {

    ListView lv2 ;
    ArrayList<String> CheckoutList ;
    ArrayAdapter adapter;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.selecteditems);

lv2 =  (ListView) findViewById(R.id.listviewtwo);
        CheckoutList = new ArrayList<>();
        adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_2,CheckoutList);
lv2.setAdapter(adapter);

    }
}

【问题讨论】:

  • 你的班级名称有空格吗? ,选定项目控制。类
  • ,选定项控件。类在清单中声明?
  • 发布您的代码和错误
  • 类名是“SelectedItemsControl”,这里显示的代码是在发布时自动格式化的,但在我使用的代码中,类名中没有空格。
  • 确保您已在清单中声明您的活动,如果问题仍然存在,请发布您的 stackTrace

标签: android android-intent navigation


【解决方案1】:

检查清单。您的活动是否已声明

<activity android:name=".SelectedItemsControl" />

希望对您有所帮助。如果您有其他问题,请询问我会帮助您,如果这没有帮助,请尝试第二个选项

public void checkout(View view){
    Intent intent = new Intent(FirstActivity.this, SecondActivity.class); 
    startActivity(intent); }

尝试在您的第二个活动中评论代码。如果您在第二个活动中有任何错误,它会有所帮助。

public class SelectedItemsControl extends AppCompatActivity {

    ListView lv2 ;
    ArrayList<String> CheckoutList ;
    ArrayAdapter adapter;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.selecteditems);

/*lv2 =  (ListView) findViewById(R.id.listviewtwo);
        CheckoutList = new ArrayList<>();
        adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_2,CheckoutList);
lv2.setAdapter(adapter);*/

    }
}

【讨论】:

  • 好的,谢谢,我尝试使用第二个活动的对象来填充第一个类中的列表视图,以便填充而不是传递它,这是正确的做法吗?
  • 向我展示您的代码,在单击第一个活动列表视图项时如何在第二个活动中设置列表视图适配器?
【解决方案2】:

你的代码应该是这样的

public void checkout(View view){
    Intent intent = new Intent(FirstActivity.this, SecondActivity.class); // no space in class name
    startActivity(intent); }//no space between Start and Activity.

【讨论】:

  • 另外,检查您的 SelectedItemsControl 是否存在 Activity 并在清单中注册。通过,
  • 还要确保在按钮点击监听器上调用“checkout”方法。
  • @Upsana 谢谢你的帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-28
  • 2022-10-13
  • 1970-01-01
相关资源
最近更新 更多