ListView 中的问题

Issues in ListView

如何将列表视图单个项目名称显示为单个布局 Header 名称? 这是我的 CODE:In 仅此代码 我的应用程序名称显示为所有人的标题 layouts.but 我想要单独的项目名称列表作为 header 单独布局中的名称?

ListView list;

int i;
String[] places = {"AP State Archaeology Museum","Birla Mandir","Birla Planetarium","Charminar","Chowmahalla Palace",
        "Golkonda Fort", "Hussain Sagar","Lumbini Park","Makkah Masjid","Mrugavani National Park","Nehru Zoological Park","Nizam Museum",
        "Ramoji Film City", "Salar Jung Museum","Shilparamam"};
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
   LinearLayout ll = (LinearLayout)findViewById(R.id.linear);
    LinearLayout linear = (LinearLayout)findViewById(R.id.linear1);
    list = (ListView)findViewById(R.id.places);
    ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_dropdown_item_1line,places);
    list.setAdapter(adapter);
    list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            if (position == 0)
            {
                Intent i = new Intent(MainActivity.this,Apstate.class);
                startActivity(i);
            }
            if (position == 1)
            {
                Intent i1 = new Intent(MainActivity.this,Birla.class);
                startActivity(i1);
            }
            if (position == 2)
            {
                Intent i2 = new Intent(MainActivity.this,BirlaPlanetarium.class);
                startActivity(i2);
            }
            if (position == 3)
            {
                Intent i3 = new Intent(MainActivity.this,Charminar.class);
                startActivity(i3);
            }
            if (position == 4)
            {
                Intent i4 = new Intent(MainActivity.this,Chowmahal.class);
                startActivity(i4);
            }
            if (position == 5)
            {
                Intent i5 = new Intent(MainActivity.this,Golkonda.class);
                startActivity(i5);
            }
            if (position == 6)
            {
                Intent i6 = new Intent(MainActivity.this,Hussiansagar.class);
                startActivity(i6);
            }
            if (position == 7)
            {
                Intent i7 = new Intent(MainActivity.this,Lumbinipark.class);
                startActivity(i7);
            }
            if (position == 8)
            {
                Intent i8 = new Intent(MainActivity.this,Meccamasjid.class);
                startActivity(i8);
            }
            if (position == 9)
            {
                Intent i9 = new Intent(MainActivity.this,Mrugavani.class);
                startActivity(i9);
            }
            if (position == 10)
            {
                Intent i10 = new Intent(MainActivity.this,Nehrupark.class);
                startActivity(i10);
            }
            if (position == 11)
            {
                Intent i11 = new Intent(MainActivity.this,Nizam.class);
                startActivity(i11);
            }
            if (position == 12)
            {
                Intent i12 = new Intent(MainActivity.this,Ramoji.class);
                startActivity(i12);
            }
            if (position == 13)
            {
                Intent i13 = new Intent(MainActivity.this,Salarjung.class);
                startActivity(i13);
            }
            if (position == 14)
            {
                Intent i14 = new Intent(MainActivity.this,shilparamam.class);

                startActivity(i14);
            }
        }
    });
}}
  • 您列出了 ArrayList
  • 中的所有数据
  • 通过 putExtra 传递 ArrayList 的位置或通过 putExtra 传递整个 arraylist,并在 Listview 项目单击上传递 Intent。

首先你应该在点击时获取列表视图的字符串,然后通过使用 put extra 和它的对象名称

将字符串传递给另一个 activity

按照你的说法,你应该这样做,

  list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    String value=list.getItemAtPosition(position).toString();
                if (position == 0) {
                    Intent i = new Intent(MainActivity.this, Apstate.class);
                    i.putExtra("ListView_value",value);
                    startActivity(i);
                }
                if (position == 1)
                {
                    Intent i1 = new Intent(MainActivity.this,Birla.class);
                    i1.putExtra("ListView_value",value);
                    startActivity(i1);
                }
                ....// same like the above do for all
                ...
                ...
            }

        });

然后你的 activity class 就像:

    Apstate Class Activtiy:-

String value;
Bundle extras = getIntent().getExtras();
value = extras.getString("ListView_value");
setTitle(value);

Birla Class 活动:-

String value;
Bundle extras = getIntent().getExtras();
value = extras.getString("ListView_value");
setTitle(value);

应该为所有其他 classes...

    same like that in all class activity class
    ......