Monday, August 10, 2015

Basic List Activity Without Layout


.
Basic ListActivity Without Layout
Using Android Studio 1.4

1) Create New Project

Application Name: MyListActivityNoLayout1
Select API 14:Android 4.0 (IceCreamSandwich)
Follow the wizard to create New Empty Activity.
Deselect “Generate Layout File”

2) Edit MainActivity.java

package com.notarazi.mylistactivitynolayout1;
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class MainActivity extends ListActivity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       super.onCreate(savedInstanceState);
       String[] values = new String[]{"Android""iPhone""WindowsMobile",
               "Blackberry""WebOS""Ubuntu""Windows7""Max OS X",
               "Linux""OS/2"};
       ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
               android.R.layout.simple_list_item_1, values);
       setListAdapter(adapter);
   }
}
OUTCOME.

3) Customize AndroidManifest to add ActionBar

(Note: Make sure your Android minimum API-14 or later.)
option1:
           android:theme="@android:style/Theme.Holo.Light.DarkActionBar"
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.notarazi.mylistactivitynolayout1" >
   <application
       android:allowBackup="true"
       android:icon="@mipmap/ic_launcher"
       android:label="@string/app_name"
       android:supportsRtl="true"
       android:theme="@style/AppTheme" >
       <activity android:name=".MainActivity"
           android:theme="@android:style/Theme.Holo.Light.DarkActionBar"
           android:label="ListView_Activity_Label">
           <intent-filter>
               <action android:name="android.intent.action.MAIN" />
               <category android:name="android.intent.category.LAUNCHER" />
           </intent-filter>
       </activity>
   </application>
</manifest>
OUTCOME.
option 2:
android:theme="@android:style/Theme.WithActionBar"
OUTCOME.
option 3:
android:theme="@android:style/Theme.DeviceDefault.Light.DarkActionBar"
OUTCOME.

4) Add Action Menu

4.1) Add Menu Resource

res/menu/menu_main.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:app="http://schemas.android.com/apk/res-auto"
   xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
   <item android:id="@+id/action_settings" android:title="settings"
       android:orderInCategory="100" app:showAsAction="never" />
</menu>

4.2) Edit MainActivity.java

package com.notarazi..mylistactivitynolayout1;
import android.app.ListActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
public class MainActivity extends ListActivity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       super.onCreate(savedInstanceState);
       String[] values = new String[]{"Android""iPhone""WindowsMobile",
               "Blackberry""WebOS""Ubuntu""Windows7""Max OS X",
               "Linux""OS/2"};
       ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
               android.R.layout.simple_list_item_1, values);
       setListAdapter(adapter);
   }
   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
       // Inflate the menu; this adds items to the action bar if it is present.
       getMenuInflater().inflate(R.menu.menu_main, menu);
       return true;
   }
   @Override
   public boolean onOptionsItemSelected(MenuItem item) {
       // 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();
       //noinspection SimplifiableIfStatement
       if (id == R.id.action_settings) {
           return true;
       }
       return super.onOptionsItemSelected(item);
   }
}
Set theme in Activity Section of AndroidManifest(Optional)
android:theme="@android:style/Theme.Holo.Light.DarkActionBar"
OUTCOME.

5) Add List Click Response

package com.notarazi.mylistactivitynolayout1;
import android.app.ListActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends ListActivity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       super.onCreate(savedInstanceState);
       String[] values = new String[]{"Android""iPhone""WindowsMobile",
               "Blackberry""WebOS""Ubuntu""Windows7""Max OS X",
               "Linux""OS/2"};
       ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
               android.R.layout.simple_list_item_1, values);
       setListAdapter(adapter);
   }
   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
       // Inflate the menu; this adds items to the action bar if it is present.
       getMenuInflater().inflate(R.menu.menu_main, menu);
       return true;
   }
   @Override
   public boolean onOptionsItemSelected(MenuItem item) {
       // 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();
       //noinspection SimplifiableIfStatement
       if (id == R.id.action_settings) {
           return true;
       }
       return super.onOptionsItemSelected(item);
   }
   @Override
   protected void onListItemClick(ListView l, View v, int position, long id) {
       super.onListItemClick(l, v, position, id);
       // ListView Clicked item index
       int itemPosition     = position;
       // ListView Clicked item value
       String  itemValue    = (String) l.getItemAtPosition(position);
       Toast.makeText(this, itemValue + " selected", Toast.LENGTH_LONG).show();
   }
}
OUTCOME.

DOWNLOAD

REFERENCE



.

No comments:

Post a Comment