【问题标题】:Items in ListView not reactingListView 中的项目没有反应
【发布时间】:2016-04-08 16:48:18
【问题描述】:

我正在编写一个应用程序,并创建了一个包含 ListView 的滑入式菜单。

但这些项目不可点击。单击其中一项后,滑入式菜单关闭并且没有任何反应,尽管它应该烤一些东西。

这是我的代码:

    statsdrawerLayout = (DrawerLayout)findViewById(R.id.statsdrawerlayout);
    statslist = (ListView)findViewById(R.id.statslist);

    statslist.setOnItemClickListener(this);

    ArrayList<String> graphArray = new ArrayList<String>();

    graphArray.add("Feuchtigkeit");
    graphArray.add("Sonneneinstrahlung");
    graphArray.add("Windeschwindigkeit");
    graphArray.add("Außen-Temperatur");
    graphArray.add("Alle Graphen zurücksetzen");

    statslist.setChoiceMode(ListView.CHOICE_MODE_SINGLE);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_activated_1, graphArray);
    statslist.setAdapter(adapter);

    statslist.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
    statslist.setFocusable(false);
    statslist.setFocusableInTouchMode(false);

    statsdrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);

    actionBarDrawerToggle = new ActionBarDrawerToggle(this,statsdrawerLayout, R.string.openstats,R.string.closestats);
    statsdrawerLayout.addDrawerListener(actionBarDrawerToggle);
    ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayShowHomeEnabled(true);
    actionBar.setDisplayHomeAsUpEnabled(true);

在我的 onCreate 下方,我放置了我的 onItemClick:

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    switch(position){
        case 0:

            Toast.makeText(StatistikAllGraphs.this, "Clicked", Toast.LENGTH_SHORT).show();
        break;

    }
}

还有其他 4 种情况,但是这里的代码太多了。

这是我的布局文件中的重要部分:

?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/statsdrawerlayout">


    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/fragmentholder">
    </FrameLayout>

    <ListView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/statslist"
        android:layout_gravity="start"
        android:clickable="true"
        android:background="@color/Orange">
    </ListView>
</android.support.v4.widget.DrawerLayout>

提前致谢。

泽维尔·赛林格

【问题讨论】:

  • 尝试使用 if 语句并在 onItemClick 日志中记录 position 的值
  • 你有statslist.setFocusable(false);statslist.setFocusableInTouchMode(false);。你能试着把它们变成真的吗?
  • 照你说的做了,但没用。

标签: android listview android-arrayadapter onitemclicklistener onitemclick


【解决方案1】:

您是否在 oncreate 中设置了 listview.onitemclicklistener(this) 并实现了 listview.onitemclicklistener?并尝试休息;在 toast 之后的 case 块内。

【讨论】:

  • 我使用了 AdapterView.OnItemClickListener 并忘记了 setOnItemClickListener。我编辑了我的代码,但它仍然不起作用。
  • 尝试使列表视图在 xml 文件上可点击啊哈哈,你的休息使 k 变小
  • 没有工作,不知道该怎么办了。我实际上是在 3 天前回答的,但它以某种方式被删除了
  • 抱歉回复晚了。我建议您按照android4devs.com/2014/12/… 的指南来创建抽屉并在其中放置可点击的项目。跟随它,你会实现你想要的。呵呵
  • 或最简单的克隆我做了什么github.com/lloreradondi/ShoppingCartMobile.git 并查看代码
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-30
  • 2019-09-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多