作者setwise (AFu)
看板AndroidDev
标题Re: [问题] 我想问一个有关spinner的问题
时间Wed Sep 4 01:01:00 2013
※ 引述《yauhh (哟)》之铭言:
: ※ 引述《w999 (Mr.帅)》之铭言:
: : 不好意思我又来问问题了
: : 我想问一下有办法让我随着选到spinner里面的item
: : 而改变listview的内容
: Spinner是选单,所以程式只要加上spinner的OnItemSelectedListener,
: 选到项目时,就根据项目准备不同的列表,塞进ListView. 像以下例子是简单的
: 文字呈现:
: Spinner spinner = (Spinner)findViewById(R.id.spinner);
: String[] arr = new String[]{"A", "B"};
: ArrayAdapter<String> adapter = new ArrayAdapter<String>(
: HelloWorldActivity.this,
: android.R.layout.simple_spinner_item,
: arr);
: spinner.setAdapter(adapter);
: spinner.setOnItemSelectedListener(new OnItemSelectedListener(){
: public void onItemSelected(AdapterView<?> parent, View me, int id,
: long position) {
: LinearLayout layout = (LinearLayout)me.getParent().getParent();
: ListView listview = (ListView)layout.findViewById(
: android.R.id.list);
: TextView textview = (TextView)me;
: ListAdapter adapter = null;
: if (textview.getText().equals("A")) {
: String[] arrA = new String[]{ "Hello", "world"};
: adapter = new ArrayAdapter(HelloWorldActivity.this,
: android.R.layout.simple_list_item_1,
: arrA);
: } else if (textview.getText().equals("B")) {
: String[] arrB = new String[]{ "Hello", "Kitty"};
: adapter = new ArrayAdapter(HelloWorldActivity.this,
: android.R.layout.simple_list_item_1,
: arrB);
: }
: listview.setAdapter(adapter);
: }
: public void onNothingSelected(AdapterView<?> arg0) {
: }
: });
敝人新手我最近在研究spinner和listview的合并使用
刚好看到这篇正好符合我的需求
便引用这段程式码试用
我把这段丢到我的程式後使用却跳出BUG
好几段AndroidRuntime的错误
下列为前段部分显示的错误
D/AndroidRuntime(20663): Shutting down VM
W/dalvikvm(20663): threadid=1: thread exiting with uncaught exception (group=0x40ab9228)
E/AndroidRuntime(20663): FATAL EXCEPTION: main
E/AndroidRuntime(20663): java.lang.NullPointerException
测试後发现似乎在onItemSelected里动到listview就会出错
也就是listview.setAdapter(adapter);那行
请问该如何解决?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 36.229.164.34
1F:→ Deltaguita:他报NullPointerException 你有检查adapter的内容吗? 09/04 11:52
2F:→ Deltaguita:你用把adapter印出来看看他里面是甚麽东西 09/04 11:53
3F:→ ted66:OnItemSelectedListener改OnItemClickListener呢 09/04 17:19
4F:→ setwise:adapter有成功加进东西没错 09/04 23:27
5F:→ setwise:OnItem那行改掉的会和上一行的OnItemClickListener冲突 09/04 23:29
6F:→ setwise:把ListView改抓自己XML上的似乎就过了..请问这是什麽原因? 09/04 23:36