Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Listview-McClick侦听器不工作_Android_Android Listview - Fatal编程技术网

Android Listview-McClick侦听器不工作

Android Listview-McClick侦听器不工作,android,android-listview,Android,Android Listview,我在一个Android应用程序中工作,我需要创建onItemClick方法,但我没有这样做。下面是onItemClick方法不起作用的代码。有人知道为什么它不起作用吗 public class sample extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setC

我在一个Android应用程序中工作,我需要创建
onItemClick
方法,但我没有这样做。下面是
onItemClick
方法不起作用的代码。有人知道为什么它不起作用吗

public class sample extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.live_chat_screen);

        mListview = (ListView) findViewById(R.id.mLiveview);
        mListview.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapters, View childView,int position, long arg3) {
                // TODO Auto-generated method stub
                Toast.makeText(sample.this,"Item number : " + position + " clicked",Toast.LENGTH_LONG).show();
            }
        });
公共类示例扩展活动{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.live\u chat\u屏幕);
mListview=(ListView)findViewById(R.id.mLiveview);
setOnItemClickListener(新的OnItemClickListener(){
@凌驾
公共单击(适配器视图适配器、视图子视图、int位置、长arg3){
//TODO自动生成的方法存根
Toast.makeText(示例。此,“项目编号:”+位置+“单击”,Toast.LENGTH\u LONG.show();
}
});
以下是xml:

<ListView
     android:id="@+id/mLiveview"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"    
     android:fastScrollEnabled="true"           

     android:scrollbars="vertical" >
</ListView>

实际上,我在我的应用程序中使用了两个视图,第一个视图是当应用程序打开时,另一个视图是在listview加载时打开的


谁能帮帮我吗。

你忘记的主要事情是

setContentView(R.layout.activity_menus);

您没有在活动中设置布局。请先使用setContentView()设置xml,如下所示:

setContentView(R.layout.your_xml);
然后继续

mListview = (ListView) findViewById(R.id.mLiveview);

将此代码添加到布局中,然后重试

android:clickable="true"
android:focusable="true"

在您的
列表视图中尝试此操作

 <ListView
                android:id="@+id/list"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:focusable="true"
                android:descendantFocusability="blocksDescendants" 
                android:orientation="horizontal"
                android:scrollbars="vertical"
                android:smoothScrollbar="true" />

为什么它不起作用?代码很完美。在onItemClick中添加一些日志,以便知道该项目已被单击。您遇到了什么样的错误?列表中是否有项目?编写Toast.makeText(您的Activity.this,“item number:+position+”clicked),Toast.LENGTH\u LONG。show();
@AndroidKiller我尝试了上面的代码,但得到了回应,实际上我在我的应用程序中使用了两个视图app@priya没有工作难以置信的无益,发布一些日志(如果有的话),放置列表适配器的代码如何添加
listview
项…嗨,gaurav,不要急于给出你的答案。只提供她想要的。在你的代码中,谁知道ws,什么是产品,你为什么要打开活动?所以,只要用一些日志编辑你的答案,提问者就会明白。:@TarunDroid priya的代码的问题是她忘了设置contentview@TarunDroid是的,在她的代码集ContentView之前不是thr。
   android:focusable="false"
   android:focusableInTouchMode="false" 


 <CheckBox
    android:id="@+id/chk_delete"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:focusable="false"
    android:focusableInTouchMode="false" />