0

这是我的代码:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    final ListView listView = (ListView) findViewById(R.id.mylist);

    final Button b=(Button)findViewById(R.id.b);
    b.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            // Perform action on click
            while(i<30){
                String stringValue = Integer.toString(i);
            tt[i] = sendPostDataToInternet(stringValue);
            i++;
            }
            //TextView f=(TextView)findViewById(R.id.cc);
            //f.setText(tt[1]+tt[2]+tt[3]);
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(v.getContext(),
                    android.R.layout.simple_list_item_1, android.R.id.text1, tt);
            listView.setAdapter(adapter);
        }

    });
       }

我试图将数据设置为文本并且它有效,但是当我将它设置为列表视图时它给出

at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)

怎么回事谢谢。

4

2 回答 2

1

您应该使用thisoractivity.this甚至getActivity()在您实例化适配器时使用。

由于我经常使用片段,因此我通常最终会使用getActivity(),因此如果需要,我可以在多个活动中重用一个片段。

例子:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), 
    android.R.layout.simple_list_item_1, android.R.id.text1, tt); 
于 2012-06-15T15:05:15.763 回答
1

排队

ArrayAdapter<String> adapter = new ArrayAdapter<String>(v.getContext(),
android.R.layout.simple_list_item_1, android.R.id.text1, tt);

使用YOURActivityName.this而不是v.getContext()

于 2012-06-15T14:22:31.233 回答