亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我的程序無法點擊

package com.example.listview;


import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;


import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.view.View;

import android.widget.AdapterView;

import android.widget.AdapterView.OnItemClickListener;

import android.widget.ArrayAdapter;

import android.widget.ListView;

import android.widget.SimpleAdapter;

import android.widget.Toast;


public class MainActivity extends Activity implements OnItemClickListener{

? ? private ListView listView;

? ? private ArrayAdapter<String>aar_adapter;

? ? private SimpleAdapter simp_adapter;

? ? private List<Map<String,Object>>datalist;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

String[]arr_data={"慕課網1","慕課網2","慕課網3","慕課網4","慕課網5","慕課網6"};

listView=(ListView) findViewById(R.id.listView);

//Adapter(上下文,當前ListView加載的每一個列表項所對應的布局文件,數據源)

//SimpleAdapter

/*

*context:上下文

*data:數據源 ?List<? extends Map<String, ?>> data)一個Map所組成的List集合

*每一個Map都會對應ListView列表中的一行

*每一個Map(鍵-值對)的鍵必修包含所有在from中所指定的鍵

*resource:列表下的布局文件ID

*from:Map中的鍵名

*to:綁定數據視圖中的Id

*/

datalist=new ArrayList<Map<String,Object>>();

aar_adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arr_data);

//listView.setAdapter(aar_adapter);

simp_adapter=new SimpleAdapter(this, getData(), R.layout.item, new String[]{"image","text"}, new int[]{R.id.image,R.id.text});

listView.setAdapter(simp_adapter);

listView.setOnItemClickListener(this);

}

public List<Map<String,Object>> getData()

{

for(int i=1;i<20;i++)

{

Map<String, Object>map=new HashMap<String, Object>();

map.put("image", R.drawable.ic_launcher);

map.put("text", "慕課網"+(i+1));

datalist.add(map);

}

return datalist;

}

@Override

public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {

String text=listView.getItemAtPosition(arg2)+"";

Toast.makeText(this, "position="+arg2+" text="+text, 1).show();

}


}


正在回答

1 回答

找了一下確實和我沒什么不一樣。就倒數第四行你沒有將texttoString()。不知道是不是哪里的原因。我將我的代碼貼出來你看一下吧:

package text.xu.com.listview;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AbsListView;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MainActivity extends AppCompatActivity implements AdapterView.OnItemClickListener,AbsListView.OnScrollListener{
? ?private ListView lViewe;
? ?private ArrayAdapter<String> aAdapter;
? ?private SimpleAdapter sAdapter;
? ?private List<Map<String,Object>> dataList;
? ?@Override
? ?protected void onCreate(Bundle savedInstanceState) {
? ? ? ?super.onCreate(savedInstanceState);
? ? ? ?setContentView(R.layout.activity_main);
? ? ? ?//String[] astring={"xu","xuu","xuuu"};
? ? ? ?//aAdapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, astring);
? ? ? ?// lViewe.setAdapter(aAdapter);

? ? ? ?dataList=new ArrayList<Map<String, Object>>();
? ? ? ?lViewe=(ListView) findViewById(R.id.listView);
? ? ? ?sAdapter=new SimpleAdapter(this,getData(),R.layout.item,new String[]{"pic","text"},new int[]{R.id.pic,R.id.text});
? ? ? ?lViewe.setAdapter(sAdapter);
? ? ? ?lViewe.setOnItemClickListener(this);
? ? ? ?lViewe.setOnScrollListener(this);
? ?}
? ?private List<Map<String,Object>> getData(){
? ? ? ?for(int i=0;i<20;i++){
? ? ? ? ? ?Map<String,Object> map=new HashMap<String, Object>();
? ? ? ? ? ?map.put("pic", R.drawable.ic_launcher);
? ? ? ? ? ?map.put("text", "機器人"+i);
? ? ? ? ? ?dataList.add(map);
? ? ? ?}
? ? ? ?return dataList;
? ?}
? ?@Override
? ?public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
? ? ? String str1= lViewe.getItemAtPosition(position).toString();
? ? ? ?Toast.makeText(this,"position"+position+" text"+str1,Toast.LENGTH_SHORT).show();
? ?}
? ?@Override
? ?public void onScrollStateChanged(AbsListView absListView, int scollstate) {
? ?switch (scollstate){
? ? ? ?case SCROLL_STATE_FLING:
? ? ? ? ? ?Log.e("scroll","手指離開仍繼續滑動");
? ? ? ? ? ?break;
? ? ? ?case SCROLL_STATE_IDLE:
? ? ? ? ? ?Log.e("scroll","停止滑動");
? ? ? ? ? ?break;
? ? ? ?case SCROLL_STATE_TOUCH_SCROLL:
? ? ? ? ? ?Log.e("scroll","使用手指滑動");
? ? ? ? ? ?Map<String,Object> map=new HashMap<String, Object>();
? ? ? ? ? ?map.put("pic",R.drawable.ic_launcher);
? ? ? ? ? ?map.put("text","小小機器人呦吼");
? ? ? ? ? ?dataList.add(map);
? ? ? ? ? ?sAdapter.notifyDataSetChanged();
? ? ? ? ? ?break;
? ?}
? ?}
? ?@Override
? ?public void onScroll(AbsListView absListView, int i, int i1, int i2) {
? ?}
}

0 回復 有任何疑惑可以回復我~
#1

為彭十七加油oO

最后一個函數方法onScroll有什么用我忘記了...幾十天之前寫的代碼了。
2017-12-03 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Android攻城獅的第二門課(第1季)
  • 參與學習       111145    人
  • 解答問題       1560    個

本課程由淺入深地帶您學會Android的常用控件的開發和使用

進入課程

為什么我的程序無法點擊

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號