Wednesday 18 March 2015

Start a new Activity

Create a new android application

Class Files
MainActivity.java
public class MainActivity extends Activity {
    Button b_newPage;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        b_newPage=(Button)findViewById(R.id.button_newpage);

        b_newPage.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent myIntent = new Intent(MainActivity.this, NewPageActivity.class);
                myIntent.putExtra("key", "Key Value"); //Optional parameters
                startActivity(myIntent);
            }
        });
    } 
}
 NewPageActivity.java

public class NewPageActivity extends Activity {
    TextView tvkey;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_new_page);
        //Retrieve extended data from the intent.
        String key=getIntent().getStringExtra("key");
        tvkey=(TextView)findViewById(R.id.tv_key);
        //Append the specified text to the TextView's display buffer
        tvkey.append(key);
    }
}

Layouts 

activity_main.xml

<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:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Open New Page"
        android:id="@+id/button_newpage"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

</RelativeLayout>


activity_new_page.xml




<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    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.relationwithandroid.intentssample.NewPageActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Congrats!!!!"
        android:textSize="30sp"
        android:layout_gravity="center"/>

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="You opened Second Activity"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textSize="25sp"
        android:layout_gravity="center"/>

    <TextView
        android:id="@+id/tv_key"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Key is " />

</LinearLayout>

Add new Activity to manifest file

<activity
            android:name="com.sjk.testapp.NewPageActivity"
            android:label="@string/app_name" >
        </activity>

GitHub link
 

No comments:

Post a Comment