0

良い一日。私はこのリンクhttp://www.androidhive.info/2011/08/android-tab-layout-tutorial/を密接にたどってタブレイアウトを作成しました..今、アクティビティは問題なく表示されていますが、 listview は、リストの単一のアイテム (つまり、最初のアイテム) のみを表示しています。Googleで検索しましたが、何も見つかりません。これは、リストビューによって入力されるアクティビティです

public class MainAct extends Activity {
String mallvalue; 
String filtervalue;
    @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_discover_it);

    final ListView listview = (ListView) findViewById(R.id.listview);
   final String[] values = new String[] { "Malls","Floor","Distance","Interest" };

    final ArrayList<String> list = new ArrayList<String>();



    for (int i = 0; i < values.length; ++i) {

          list.add(values[i]);


    }
    final StableArrayAdapter adapter = new StableArrayAdapter(this,
        android.R.layout.simple_list_item_1, list);
    listview.setAdapter(adapter);

    listview.setOnItemClickListener(new OnItemClickListener() {

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


           if(values[position].equals("Malls"))
           {
           Intent intent = new Intent(MainAct.this,AllInfo.class);

        mallvalue = getIntent().getExtras().getString("mallvalue");
        intent.putExtra("listingtype", values[position]);
        intent.putExtra("mallvalue", mallvalue);
        startActivity(intent);
           Toast.makeText(MainAct.this,
                      "Clicked: " + values[position], Toast.LENGTH_LONG)
                      .show();
           }
           else
           {
               Toast.makeText(MainAct.this,
                          "Clicked: " + values[position], Toast.LENGTH_LONG)
                          .show();
               Intent intent = new Intent(MainAct.this,Malls.class);


               startActivity(intent);  
           }

    }


    });
  }

  private class StableArrayAdapter extends ArrayAdapter<String> {

    HashMap<String, Integer> mIdMap = new HashMap<String, Integer>();

    public StableArrayAdapter(Context context, int textViewResourceId,
        List<String> objects) {
      super(context, textViewResourceId, objects);
      for (int i = 0; i < objects.size(); ++i) {
        mIdMap.put(objects.get(i), i);
      }
    }

    @Override
    public long getItemId(int position) {
      String item = getItem(position);
      return mIdMap.get(item);
    }

    @Override
    public boolean hasStableIds() {
      return true;
    }

  }


}    

そしてこれがレイアウトです

<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/listview"
android:layout_width="wrap_content"
android:layout_height="match_parent" /> 

私からの情報がさらに必要な場合はお知らせください。どうもありがとうございました

4

0 に答える 0