列出片段的适配器

时间:2012-03-06 12:45:32

标签: android listview adapter fragment

我在我的应用程序中使用片段。它用于选项卡功能。在一个选项卡中我需要在viewflipper中显示一个列表。列表视图是一个单独的xml文件。我用视图flipper扩展了listview.the内容列表视图的(列表项)是另一个xml文件。它包含四个textviews.textview的值是动态设置的。为此创建了一个名为store adapter的自定义适配器。但问题是我不能使用这个商店适配器在我的程序中。当我使用它时它没有显示values.since列表视图项是一个单独的文件我也无法扩展listfragment.i不知道我该怎么做才能显示我的content.given下面是我的代码.plz帮帮我。

public class TabStoreLocatorFragment extends Fragment implements OnClickListener {

private Button mapSwitcher;
private LinearLayout lastSelectedStoreButton;
private LinearLayout noSelectedStoreSection;
private TextView storeInfoName;
private TextView storeInfoAddress;
private TextView storeInfoCity;
private RelativeLayout phoneLocationButton;
private EditText searchStoreLocation;
private ListView storeList;
private ViewFlipper storeFlipper;
private LinearLayout theLayout;
private Store store;
private Context context;
private String searchStoreText;

//private ProgressDialog findStoreProgressDialog;
//private StoreItemizedOverlay<StoreOverlayItem> storeOverlay;
//private List<Overlay> mapOverlays;
//private Drawable storePin;

@SuppressWarnings("static-access")
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    if (container == null) {
        // We have different layouts, and in one of them this
        // fragment's containing frame doesn't exist. The fragment
        // may still be created from its saved state, but there is
        // no reason to try to create its view hierarchy because it
        // won't be displayed. Note this is not needed -- we could
        // just run the code below, where we would create and return
        // the view hierarchy; it would just never be used.
        return null;
    }


    context=getActivity().getApplicationContext();
     theLayout = (LinearLayout) inflater.inflate(
            R.layout.tab_store_locator_layout, container, false);

    phoneLocationButton = (RelativeLayout) theLayout.findViewById(R.id.phone_location_button);
    mapSwitcher=(Button)theLayout.findViewById(R.id.switch_state_button);
    lastSelectedStoreButton=(LinearLayout)theLayout.findViewById(R.id.last_selected_store_button);
    noSelectedStoreSection=(LinearLayout)theLayout.findViewById(R.id.no_selected_store);
    storeInfoName=(TextView)theLayout.findViewById(R.id.store_name);
    storeInfoAddress=(TextView)theLayout.findViewById(R.id.store_address);
    storeInfoCity=(TextView)theLayout.findViewById(R.id.store_city);
    searchStoreLocation=(EditText)theLayout.findViewById(R.id.search_store);
    storeFlipper = (ViewFlipper)theLayout.findViewById(R.id.store_flipper);
    storeList = (ListView)inflater.inflate(R.layout.store_list, null);
    storeFlipper.addView(storeList);

    store=new Store(); 
    store.setName("store1");
    store.setAddress("california");
    store.setCity("newyork");
    store.setZipCode("23");
    store.setState("california");

    phoneLocationButton.setOnClickListener(this);
    mapSwitcher.setOnClickListener(this);
    lastSelectedStoreButton.setOnClickListener(this);
    return theLayout;

}


@Override
public void onClick(View view) {
    int id = view.getId();
    if (id == R.id.phone_location_button) {

        searchStoreText=searchStoreLocation.getText().toString();


        @SuppressWarnings("unchecked")
        StoreAdapter adapter = new StoreAdapter(context, R.layout.store_list_item);

        storeList.setAdapter(adapter);



    }
    else if(id == R.id.switch_state_button){

    }
    else{


    }


}

    }

1 个答案:

答案 0 :(得分:1)

自定义列表适配器可以使用。