ListView using ListFragment Android
Step 1 : Select File -> New -> Project -> Android Application Project. Fill the forms, create a Blank Activity and click on Finish button.
Step 2 : Open res -> layout ->activity_main.xml and add following code :
< RelativeLayout xmlns : android = “http://schemas.android.com/apk/res/android"
xmlns : tools = “http://schemas.android.com/tools"
android : layout_width = “match_parent”
android : layout_height = “match_parent”
android : paddingBottom = “@dimen/activity_vertical_margin”
android : paddingLeft = “@dimen/activity_horizontal_margin”
android : paddingRight = “@dimen/activity_horizontal_margin”
android : paddingTop = “@dimen/activity_vertical_margin”
tools : context =”com.skholingua.android.listfragment.MainActivity” >
< fragment
android : id = “@+id/fragment1”
android : name =”com.skholingua.android.listfragment.MyListFragment”
android : layout_width = “match_parent”
android : layout_height = “match_parent” / >
< / RelativeLayout >
Step 3 : Open src -> package ->MainActivity.java and add following code :
package com . skholingua . android . listfragment ;
import android . os . Bundle ;
import android . support . v4 . app . FragmentActivity ;
import android . view . Menu ;
import android . view . MenuItem ;
public class MainActivity extends FragmentActivity {
@Override
protected void onCreate ( BundlesavedInstanceState ) {
super . onCreate ( savedInstanceState ) ;
setContentView ( R . layout . activity_main ) ;
}
@Override
public boolean onCreateOptionsMenu ( Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater ( ) . inflate ( R . menu . main ,menu ) ;
return true ;
}
@Override
public boolean onOptionsItemSelected ( MenuItemitem ) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item . getItemId ( ) ;
if ( id == R . id . action_settings ) {
return true ;
}
return super . onOptionsItemSelected ( item ) ;
}
}
Step 4 : Open res -> layout ->Create new xml file, list_fragment.xml and add following code :
<? xml version = “1.0” encoding = “utf-8” ?>
< LinearLayout xmlns : android = “http://schemas.android.com/apk/res/android"
android : layout_width = “match_parent”
android : layout_height = “match_parent”
android : orientation = “vertical” >
< ListView
android : id = “@android:id/list”
android : layout_width = “match_parent”
android : layout_height = “wrap_content” >
< / ListView >
< TextView
android : id = “@android:id/empty”
android : layout_width = “match_parent”
android : layout_height = “wrap_content” >
< / TextView >
< / LinearLayout >
Step 5 : Open src -> package -> Create new class, MyListFragment.java and add following code :
package com . skholingua . android . listfragment ;
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 . Toast ;
public class MyListFragment extends ListFragmentimplements OnItemClickListener {
// String items = {};
@Override
public View onCreateView ( LayoutInflater inflater ,ViewGroup container ,
Bundle savedInstanceState ) {
View view = inflater . inflate ( R . layout .list_fragment , container , false ) ;
return view ;
}
@Override
public void onActivityCreated ( BundlesavedInstanceState ) {
super . onActivityCreated ( savedInstanceState ) ;
ArrayAdapter <CharSequence> adapter =ArrayAdapter . createFromResource (
getActivity ( ) , R . array . array_list ,
android . R . layout . simple_list_item_1 ) ;
setListAdapter ( adapter ) ;
getListView ( ) . setOnItemClickListener ( this ) ;
}
@Override
public void onItemClick ( AdapterView < ? > parent ,View view , int position ,
long id ) {
Toast . makeText ( getActivity ( ) , “Item: “ + (position + 1 ) ,
Toast . LENGTH_SHORT ) . show ( ) ;
}
}
Step 6 : Open AndroidManifest.xml and add following code :
<? xml version = “1.0” encoding = “utf-8” ?>
< manifest xmlns : android = “http://schemas.android.com/apk/res/android"
package = “com.skholingua.android.listfragment”
android : versionCode = “1”
android : versionName = “1.0” >
< uses — sdk
android : minSdkVersion = “16”
android : targetSdkVersion = “19” / >
< application
android : allowBackup = “true”
android : icon = “@drawable/ic_launcher”
android : label = “@string/app_name”
android : theme = “@style/AppTheme” >
< activity
android : name = “.MainActivity”
android : label = “@string/app_name” >
< intent — filter >
< action android : name =”android.intent.action.MAIN” / >
< category android : name =”android.intent.category.LAUNCHER” / >
< / intent — filter >
< / activity >
< / application >
< / manifest >