将 onClickListener 添加到 ListView 中的特定项目

0 android listview

请我尝试添加了解如何将 onItemClickListener 添加到以下代码中,以便单击“智能手机计划”时,其活动开始等。我在 StackOverflow 上看到了与此问题相关的其他问题,但不知道如何解决这些问题。我已经添加了一个 onItemClickListener 但不明白如何将它设置为特定的列表项。这是代码

package devchuks.com.rechargeit;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.app.ListActivity;

import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

public class EtisalatData extends AppCompatActivity {
    ListView listView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_etisalat_data);

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


        String[] values = new String[] {
                "Smartphone Plans",
                "Internet Bundles",
                "Weekend Plans",

        };



        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_1, android.R.id.text1, values);



        listView.setAdapter(adapter);


        listView.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                                    int position, long id) {


            }

        });
    }

}
Run Code Online (Sandbox Code Playgroud)

Fah*_*hik 5

您可以listView.setOnItemClickListener像这样定义去点击不同元素的不同活动。

listView.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, View view,
                            int position, long id) {
         String item = listView.getItemAtPosition(position);
         Toast.makeText(this,"You selected : " + item,Toast.LENGTH_SHORT).show();
         if(position==0) {
            // Do your code for clicking "Smartphone Plans" example
            // startActivity(new Intent(getApplicationContext(),SmartphonePlans.class));
         }
        else if(position==1) { 
           // Do your code for clicking "Internet Bundles". example
          // startActivity(new Intent(getApplicationContext(),InternetBundles.class));
         }
        else if(position==2) { 
           // Do your code for clicking "Weekend Plans". example 
          //startActivity(new Intent(getApplicationContext(),WeekendPlans.class));*/
    }

});
Run Code Online (Sandbox Code Playgroud)