0

リストビューを使用してアプリを作成しています。リストビューのアイテムから他のアクティビティに移動したいと思います。私は次のコードを持っています:

    package be.intec.brussel;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class Topstores<TextView> extends Activity{




    String[] items = {"C&A", "H&M","Esprit", "Tommy Hilfinger", "Shoe Discount", "Brantano", "Bell&Bo", "Scapino", "Zara", "Kruidvat"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.topstores);
        ListView ShopView = (ListView) findViewById(R.id.ShopView);





        ShopView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.test_list_item, items));

    }


    protected void onListItemClick(ListView ShopView, View v, int position, long id) {
        if("C&A".equals(items[position])){
            startActivity(Rating.class);
        }

    }


    private void startActivity(Class<Rating> class1) {


    }
}

私の質問は:startactivityメソッドの後に何を置くべきですか?

また、他のアクティビティのテキストビューでアイテムの名前(タイトル)を設定する方法も知りたいですか?

ご協力いただきありがとうございます。

4

2 に答える 2

1

startActivity すでに持っているので、のようなメソッドを作成する必要はないと思います...

ListView ShopView = (ListView) findViewById(R.id.ShopView);
ShopView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.test_list_item, items));
ShopView.setOnItemClickListener(new OnItemClickListener() {
          @Override
          public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                        long arg3) {

               if("C&A".equals(items[position])){
                       Intent intent = new Intent(Topstores.this,Rating.class);
                       intent.putExtra("itemname",items[position]); 
                       startActivity(intent);
                }
          }});

現在、評価アクティビティにあります...

class Rating extends Activity{

    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.ratingxml);

   Bundle b =getIntent().getExtras();
   String itemname = b.getString("itemname");//here you get name 
   System.out.println(itemname);

   textview.setText(itemname);//here set item in textview

    }
}
于 2012-06-01T17:03:44.567 に答える
0
private void startActivity(Class<Rating> clazz) {
    Intent intent = new Intent(Topstores.this, clazz);
    startActivity(intent);
}

このコードは、Ratingクラスへの明示的なインテントを作成し、Ratingアクティビティを開始します。

于 2012-06-01T17:09:36.150 に答える