andro-girl
andro-girl

Reputation: 8129

list adapter for fragments

i am using fragments in my application.it is for tab feature.in a tab i need to display a list in a viewflipper.the list view is a separate xml file.i have inflate the listview with view flipper.the content(list items) of the list view is another xml file.it contains four textviews.the values of the textviews are setting dynamically.i have created a custom adapter named store adapter for this purpose.but the problem is i cannot use this store adapter in my program.when i am using this it is not displaying the values.since the list view items is a separate file i could not extend listfragment as well.i dont know what should i do to display my content.given below is my code.plz help me.

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{


    }


}

    }

Upvotes: 0

Views: 1327

Answers (1)

andro-girl
andro-girl

Reputation: 8129

A custom list adapter will work.

Upvotes: 1

Related Questions