您好我有一个列表视图,其中包含我想要使用onitemclick方法打开另一个列表的元素列表

时间:2014-04-28 10:55:45

标签: java android reflection

我有一个包含方法列表的列表视图,所以在这里我将展示它     另一个列表中的参数,所以当我点击列表项(方法)时,它必须显示它     它可以通过我试过的onitemclick()方法实现的参数,但它显示了一些错误     请任何人帮忙

这是我的listview.java文件

public class Listview extends Activity{
private CursorAdapter customAdapter;
private Param databaseHelper;
private static final int ENTER_DATA_REQUEST_CODE = 1;
private ListView listView;     
private static final String TAG = Listview.class.getSimpleName();

private ListView lv;
public static ArrayList<String> your_array_list = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.listview);
    databaseHelper = new Param(this);                       
   customAdapter = new CursorAdapter (this, databaseHelper.getTripList( Param.DESC), 
   0);    
    listView = (ListView) findViewById(R.id.listView1); 
    listView.setAdapter(customAdapter); 

    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long    
 id) {
            Log.d(TAG, "clicked on item: " + position);
        }
    });  


    lv = (ListView) findViewById(R.id.listView1);
     Button backButton=(Button)findViewById(R.id.methodbackbutton1);
     backButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Listview.this.finish();
            }
        });}

  @Override
protected void onDestroy() {
    // TODO Auto-generated method stub
    super.onDestroy();
}

@Override
protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
}

@Override
protected void onResume() {
    // TODO Auto-generated method stub
    super.onResume();
}

@Override
protected void onStart() {
    // TODO Auto-generated method stub
    super.onStart();

    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,
    android.R.layout.simple_list_item_1, your_array_list );
    lv.setAdapter(arrayAdapter); 
     try {
      DisplayM.main();
    } catch (Exception e) {
        e.printStackTrace();
    }

}
@Override
public void onBackPressed()
{
    Intent intent3 = new Intent(this, Nextactivity.class);
    startActivity(intent3);
    finish();
 }
@Override
protected void onStop() {
    // TODO Auto-generated method stub
    super.onStop();
}




}

这是我的listview.xml文件

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<TextView
    android:id="@+id/textViewMyRecording"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:text="@string/listofMethods"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<ListView
    android:id="@+id/listView1"
    android:layout_width="wrap_content"
    android:layout_height="384dp" >

</ListView>

 <Button
    android:id="@+id/methodbackbutton1"
    style="?android:attr/buttonStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:onClick="onBackPressed"
    android:text="@string/Backtopreviousscreen" />

</LinearLayout>

1 个答案:

答案 0 :(得分:0)

您在变量listView&amp;中获取Same ListView资源findViewById(R.id.listView1)的引用。 LV

第二件事,你为什么要把Cursor Adapter作为列表?

第三件事,DisplayM.main();

的目的是什么

第四件事,你可以通过写完Finish()来完成一个活动,然后你就像Listview.this.finish()那样写它。 ?