qq_35361178 2016-06-19 23:33 采纳率: 0%
浏览 1799

安卓listview item单击事件跳转新的activity,intent中的value问空

对listview item加监听,单击跳转新得activity报空指针错误,value值明明放在intent里了,还是空指针错误
mainavtivity:
public class MainActivity extends Activity {
private List listNews;
private ListView list;

Handler mHandler = new Handler() {
    @Override
    public void handleMessage(Message msg) {
        // TODO Auto-generated method stub
        switch (msg.what) {
        case GetXmlAndParse.PARSESUCCWSS:
            listNews =  (List) msg.obj;
            initData();
            break;
        }
        super.handleMessage(msg);
    }
};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    list = (ListView) findViewById(R.id.list);
    GetXmlAndParse getXmlAndParse = new GetXmlAndParse(mHandler);
    getXmlAndParse.getXml();
    list.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {
            // TODO Auto-generated method stub
            switch (parent.getId())
            {
            case R.id.list:
                expressItemClick(position);//position 代表你点的哪一个
                break;


        }
    }

        private void expressItemClick(int position) {
            // TODO Auto-generated method stub
            Intent intent = new Intent(MainActivity.this,NewsActivity.class);


          Map<String, String> item = (Map<String, String>) list.getAdapter().getItem(position);
           String essay = item.get("description");

            //添加到intent域中
            intent.putExtra("description",essay );
            startActivity(intent);

            finish();

        }});

}

/**
 * 将解析后的xml填充到ListView
 */
protected void initData() {
    // TODO Auto-generated method stub
    List items = new ArrayList();
    for (News news : (List<News>)listNews) {
        Map item = new HashMap();
        item.put("title", news.getTitle());
        item.put("description", news.getDescription());
        items.add(item);
    }
    SimpleAdapter adapter = new SimpleAdapter(this, items, R.layout.news_view,
            new String[] { "title" }, new int[] { R.id.textView1 });
    list.setAdapter(adapter);

}

}
newsactivity:
public class NewsActivity extends Activity {
private TextView myTextView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Intent intent = getIntent();
    String value = intent.getStringExtra("description");

    myTextView = (TextView) findViewById(R.id.textview2);
    // 
    myTextView.setText(value);
}

}
图片说明

  • 写回答

3条回答 默认 最新

  • 笨笨爱妞妞 2016-06-20 00:13
    关注

    NewsActivity的第20行是哪一行啊?

    评论

报告相同问题?

悬赏问题

  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图