0
Workshop India
» An activity is the equivalent of a Frame/Window in  GUI toolkits. It takes up the entire drawable area  of the screen (m...
» Any screen state is called an activity.» An Application always starts with a main activity» An application can have mult...
» In res/layout we’ll need to make 2 xml files each  defining the layout for the individual activity.   ˃ main.xml   ˃ sec...
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:id...
<?xml version="1.0" encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"  android:id=...
package com.wingie;import android.app.Activity;import android.content.Context;import android.content.Intent;import android...
setContentView(R.layout.main);      addListenerOnButton();    }    public void addListenerOnButton() {      final Context ...
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"     package="co...
The super.fn() makes sure that the                                                       overridden method is also called ...
@Override                                 Another activity is taking    protected void onPause() {                        ...
» A Fragment represents a behavior or a portion of  user interface in an Activity.» A fragment must always be embedded in ...
» MainActivity.java   ˃ Main Activity that will host the 2 fragments   ˃ Layout : res/layout/Activity_main.xml» Frag1.java...
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  a...
<fragmentxmlns:android="http://schemas.android.com/apk/res/android"  android:name="com.example.fragtest.Frag2"  android:la...
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"...
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"...
package com.example.fragtest;import android.os.Bundle;import android.app.Activity;import android.view.Menu;public class Ma...
package com.example.fragtest;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;impor...
package com.example.fragtest;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;impor...
» What are Fragments?» What are Fragment Transactions?» Message passing between two fragments.  ˃ With example source code.
04   activities - Android
04   activities - Android
04   activities - Android
04   activities - Android
04   activities - Android
Upcoming SlideShare
Loading in...5
×

04 activities - Android

1,224

Published on

This ppt explains how

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,224
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
153
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "04 activities - Android"

  1. 1. Workshop India
  2. 2. » An activity is the equivalent of a Frame/Window in GUI toolkits. It takes up the entire drawable area of the screen (minus the status and title bars on top).» Activities are meant to display the UI and get input from the user.» Activities can be frozen when the focus is switched away from them (eg: incoming phone call).» Services on the other hand keep running for the duration of the user’s ‘session’ on the device.
  3. 3. » Any screen state is called an activity.» An Application always starts with a main activity» An application can have multiple activities that the user moves in and out of.» A stack of activities is maintained by the android system to handle back presses and returns.
  4. 4. » In res/layout we’ll need to make 2 xml files each defining the layout for the individual activity. ˃ main.xml ˃ second.xml» Each activity needs an activity class associated with it, these are present in the /src folder ˃ mainActivity.java -> main.xml ˃ secondActivity.java -> second.xml
  5. 5. <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="I&apos;m screen 1 (main.xml)" android:textAppearance="?android:attr/textAppearanceLarge" /> <Button android:id="@+id/button1" android:layout_width="fill_parent" Button that we’ll android:layout_height="wrap_content" use to move to the android:text="Click me to another screen" /> next activity</LinearLayout>
  6. 6. <?xml version="1.0" encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="I&apos;m screen 2 (second.xml)" android:textAppearance="?android:attr/textAppearanceLarge" /></LinearLayout>
  7. 7. package com.wingie;import android.app.Activity;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;public class mainactivity extends Activity { Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
  8. 8. setContentView(R.layout.main); addListenerOnButton(); } public void addListenerOnButton() { final Context context = this; button = (Button) findViewById(R.id.button1); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { Intent intent = new Intent(context, second.class); startActivity(intent); } }); Then we create an } intent to move to the next activity,} (Second.java)
  9. 9. <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.wingie" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="13"/> <application android:label="@string/app_name"> <activity android:name=".main" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> <activity This describes the second activity in android:label="@string/app_name" the application android:name=".second" > </activity> </application></manifest>
  10. 10. The super.fn() makes sure that the overridden method is also called before any of our code runs..public class ExampleActivity extends Activity {@Override public void onCreate(Bundle savedInstanceState) { The activity is being created. super.onCreate(savedInstanceState);}@Override protected void onStart() { The activity is about to become visible. super.onStart();}@Override protected void onResume() { The activity has become visible (it is now "resumed"). super.onResume();}
  11. 11. @Override Another activity is taking protected void onPause() { focus (this activity is about super.onPause(); to be "paused").}@Override protected void onStop() { super.onStop(); The activity is no longer} visible (it is now "stopped")@Override protected void onDestroy() { super.onDestroy(); The activity is about to be } destroyed.}
  12. 12. » A Fragment represents a behavior or a portion of user interface in an Activity.» A fragment must always be embedded in an activity ˃ fragments lifecycle is directly affected by the host activitys lifecycle.» You can insert a fragment into your activity layout ˃ by declaring the fragment in the activitys layout file, as a <fragment> element ˃ or from your application code by adding it to an existing ViewGroup container.
  13. 13. » MainActivity.java ˃ Main Activity that will host the 2 fragments ˃ Layout : res/layout/Activity_main.xml» Frag1.java ˃ Fragment 1 class ˃ Layout : res/layout/Frag1.xml» Frag2.java ˃ Fragment 2 class. ˃ Layout: res/layout/frag2.xml
  14. 14. <LinearLayoutxmlns: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" > <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:name="com.example.fragtest.Frag1" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="45" android:id="@+id/frag1"></fragment>
  15. 15. <fragmentxmlns:android="http://schemas.android.com/apk/res/android" android:name="com.example.fragtest.Frag2" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="55" android:id="@+id/frag2"></fragment></LinearLayout>
  16. 16. <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" > <TextView android:id="@+id/textview01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="Frag ONE" tools:context=".MainActivity" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textview01" android:text="ClickHere" tools:context=".MainActivity" /></RelativeLayout>
  17. 17. <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" > <TextView android:id="@+id/textview02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="Frag TWO" tools:context=".MainActivity" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/textview02" android:text="Click---Here" tools:context=".MainActivity" /></RelativeLayout>
  18. 18. package com.example.fragtest;import android.os.Bundle;import android.app.Activity;import android.view.Menu;public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }}
  19. 19. package com.example.fragtest;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class Frag1 extends Fragment {public Frag1() {// TODO Auto-generated constructor stub}public View onCreateView(LayoutInflater inflater, ViewGroup container, BundlesavedInstanceState) { View view = inflater.inflate(R.layout.frag1, container, false);return view;}}
  20. 20. package com.example.fragtest;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class Frag1 extends Fragment {public Frag1() {// TODO Auto-generated constructor stub}public View onCreateView(LayoutInflater inflater, ViewGroup container, BundlesavedInstanceState) { View view = inflater.inflate(R.layout.frag1, container, false);return view;}}
  21. 21. » What are Fragments?» What are Fragment Transactions?» Message passing between two fragments. ˃ With example source code.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×