Reputation: 557
How can i trigger new fragment or class opens up when each list item is selected? Basically i want new fragment to be youtube fragment. when "Android" is selected particular youtube link is pass to that fragment. Same goes to other list items.
import android.R.string;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class AddingList extends ListFragment implements OnItemClickListener{
String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
"Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
"Linux" };
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
@Override
public void onItemClick(AdapterView adapter, View view, int position, long id) {
Toast.makeText(getActivity().getBaseContext(), "Item clicked: " + values[position], Toast.LENGTH_LONG).show();
}
}
have some errors:
import android.R.string;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class AddingList extends ListFragment implements OnItemClickListener{
String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
"Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
"Linux" };
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
@Override
public void onItemClick(AdapterView adapter, View view, int position, long id) {
FragmentTransaction ft = FragmentManager.beginTransaction();
ft.replace(R.id.yourcontainer, new Home());
//Toast.makeText(getActivity().getBaseContext(), "Item clicked: " + values[position], Toast.LENGTH_LONG).show();
}
}
Upvotes: 0
Views: 142
Reputation: 15336
setonItemClickListner()
, and then call fragment
like
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(R.id.yourcontainer, new YourClass()).commit();
Regards
Upvotes: 1