【问题标题】:ExpandableListView OnClick go to the activity does not workExpandableListView OnClick 转到活动不起作用
【发布时间】:2014-03-17 12:01:50
【问题描述】:

我有 ExpandableListView。它看起来像这样 http://www.androidhive.info/wp-content/uploads/2013/07/android-expandable-listview.jpg 。我只想 OnChildClick 例如 Despicable Me 2 转到 SecondActivity 并发送带有“Despicable Me 2”的 PutExtra 字符串。我知道如何使用 PutExtra 和 GetExtra 方法。

有人可以给我建议如何解决这个问题吗?我尝试使用开关,但它不起作用,它没有做任何事情(它只是留在 ExpandableListView)。

这里是 MainActivity.java:

Public string movie;

expListView.setOnChildClickListener(new OnChildClickListener() {
    @Override
    public boolean onChildClick(ExpandableListView parent, View v,
            int groupPosition, int childPosition, long id) {
        Intent intent0 = new Intent(getApplicationContext(), SecondActivity.class);
        switch(groupPosition)
        {
        //Top250

        case 0: switch(childPosition)
        {
        case 0: movie="The Conjuring";
        intent0.putExtra("text1", movie);
        startActivity(intent0);
        break;
        case 1: movie="Despicable Me 2";
        intent0.putExtra("text1", movie);
        startActivity(intent0);
        break;
        }
        break;
        //Now Showing
        case 1: switch(childPosition)
        {
        case 0: 
            break;
        }
        break;
        //Coming Soon
        case 2:switch(childPosition)
        {
        case 0: 
            break;
        }

        break;
        }
        return false;
    }
});

我从http://www.androidhive.info/2013/07/android-expandable-list-view-tutorial/ 下载了这段代码,你可以在这里看到除 SecondActivity 之外的所有 xml 和活动。

【问题讨论】:

  • 您是否尝试单击第一组第一个/第二个元素,因为看起来您没有为“正在显示”实现任何东西。它应该适用于 "Top 250"

标签: java android eclipse onclick switch-statement


【解决方案1】:

尝试将意图放在开关盒中 像这样

 case 0: switch(childPosition)
                    {
                    case 0: Intent intent0 = new Intent(getApplicationContext(), SecondActivity.class);
                    movie="The Conjuring";
                    intent0.putExtra("text1", movie);
            startActivity(intent0);
                        break;

if(childPosition ==1)
                    Intent intent0 = new Intent(getApplicationContext(), SecondActivity.class);
                    movie="The Conjuring";
                    intent0.putExtra("text1", movie);
                     startActivity(intent0);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-05
    • 1970-01-01
    • 2012-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多