Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.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
Java 可单击的BaseAdapter行?_Java_Android_Intellij Idea_Android Adapter - Fatal编程技术网

Java 可单击的BaseAdapter行?

Java 可单击的BaseAdapter行?,java,android,intellij-idea,android-adapter,Java,Android,Intellij Idea,Android Adapter,我想为BaseAdapter使用类似于以下内容的方法: public void onClick() { Intent intent = new Intent(this, ChatActivity.class).putExtra(chatroomName) //Putting the text in the listview into the intent startActivity(intent) } 有办法做到这一点吗 以下是我已经为适配器准备的内容: ch

我想为
BaseAdapter
使用类似于以下内容的方法:

public void onClick() {
    Intent intent = new Intent(this, ChatActivity.class).putExtra(chatroomName) 
    //Putting the text in the listview into the intent
    startActivity(intent)
}
有办法做到这一点吗

以下是我已经为适配器准备的内容:

    chat.setAdapter(new BaseAdapter() {
        @Override
        public int getCount() {
            return messages.size();
        }

        @Override
        public Object getItem(int position) {
            return null;
        }

        @Override
        public long getItemId(int position) {
            return 0;
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            LayoutInflater layoutInflater = (LayoutInflater) getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            if (convertView == null) {
                convertView = layoutInflater.inflate(android.R.layout.simple_list_item_2, parent, false);
            }
            Date d = new Date();
            TextView seeTexts = (TextView) convertView.findViewById(android.R.id.text2);
            TextView usernameTime = (TextView) convertView.findViewById((android.R.id.text1));
            seeTexts.setText(messages.get(position).getMessage());
            String messageInfo = messages.get(position).getUsername() + " - " + messages.get(position).getSendTime();
            usernameTime.setText(messageInfo);
            usernameTime.setTextColor(Color.BLACK);
            seeTexts.setTextColor(Color.BLACK);
            seeTexts.setTextSize(16);
            usernameTime.setTextSize(13);


            return convertView;
        }
    });

您正在应用程序中使用自定义Listview。请尝试以下代码:

  ListView lv = getListView();
   lv.setOnItemClickListener(new OnItemClickListener()
   {
      @Override
      public void onItemClick(AdapterView<?> adapter, View view, int position,
            long arg3) 
      {
            String value = (String)adapter.getItemAtPosition(position); 

      }
   });
ListView lv=getListView();
lv.setOnItemClickListener(新的OnItemClickListener()
{
@凌驾
公共控件单击(适配器视图适配器、视图视图、int位置、,
长arg3)
{
字符串值=(字符串)适配器.getItemAtPosition(位置);
}
});

是否使用ListView?为什么不使用ListView的onItemClickListener请与您共享BaseAdapter我如何使用onItemClickListener?在活动或片段中使用实现将代码添加到onItemClickListener中……那么我是否要删除BaseAdapter?listView也是可变的(你能添加更多的单元格吗)?不,没有必要,你可以相应地使用它,是的listView就是这样设计的,你总是可以添加更多的单元格。