[Android] สร้างหน้าใหม่ใน Android ทำยังไงมาดู

Mobile Application Developing- Android, iOS, Window Phone สอนเขียนโปรแกรมบนมือถือ ระบบปฏิบัติการต่าง แอนดรอยด์ ไอโอเอส วินโดโฟน สอนเขียนโปรแกรมบนมือถือ

Moderators: mindphp, ผู้ดูแลกระดาน

Post Reply
touleg
PHP Super Member
PHP Super Member
Posts: 480
Joined: 25/01/2010 11:57 pm
Contact:

[Android] สร้างหน้าใหม่ใน Android ทำยังไงมาดู

Post by touleg » 31/01/2012 8:28 pm

หากเราต้องการสร้างหน้าใหม่ขึ้นมาในโปรแกรมของเรา เช่น กดปุ่มแล้วมีหน้าใหม่ขึ้นมา จะทำยังไง

1. ไปสร้างปุ่มไว้ 1 ปุ่ม ที่ไฟล์ main.xml อยู่ที่ res/layout/main.xml

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          >
<Button
          android:id="@+id/button1"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:text="Open"
          />
</LinearLayout>
2. จากนั้นให้สร้าง layout ขึ้นมาใหม่อีกไฟล์ ชื่อว่า newpage.xml ไว้ที่เดียวกับ main.xml
แต่งหน้าได้ตามใจชอบ

3. สร้างคลาสขึ้นมาใหม่อีกไฟล์ ที่สืบทอดจาก Activity ด้วย วิธีการง่ายๆคือ ก็อบปี้ไฟล์ .java แล้ว paste ลงไปที่เดิม กำหนดชื่อไฟล์ สมมุติผมใช้ชื่อไฟล์ใหม่ว่า newpage.java นะครับ
ชื่อไฟล์จะตรงกับชื่อคลาสในไฟล์

4. เปิดไฟล์ AndroidMainfest.xml ขึ้นมา เปิดไปที่หน้าดูโค้ดนะครับ ให้เราสร้าง activity เพิ่มขึ้นมา เพราะว่าเราสร้างหน้าใหม่แล้ว โดยชื่อ activity ให้ใช้ว่า .ชื่อคลาส ดังนี้

Code: Select all

<activity
            android:name=".mainpage"
            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
            android:name=".newpage" android:theme="@android:style/Theme.Light">
        </activity>
เราสามารถกำหนด theme ให้กับ activity ได้โดย

Code: Select all

android:theme="@android:style/Theme.Light"

เปลี่ยนตรง Theme.Light เป็นแบบอื่นได้ เช่น

android:theme="@android:style/Theme.Dialog" แสดงเป็นแบบป๊อบอัพ
5. จากนั้นเปิดไฟล์ activity หลักขึ้นมา (ไฟล์ .java หน้าแรก ในที่นี้ผมใช้ชื่อว่า mainpage) และเพิ่มโค้ดเข้าไป

Code: Select all

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class mainpage extends Activity{
	Button bt;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);  //กำหนด layout หลัก
        bt = (Button)findViewById(R.id.button1);
        sensorlist.setOnClickListener(new OnClickListener() {
			
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent i = new Intent(mainpage.this,newpage.class);
				startActivity(i);
			}
		});
    }
}
6. กำหนด layout หลักให้กับ Activity newpage ด้วย โดยเปิดไฟล์ newpage.java ขึ้นมา

Code: Select all

import android.app.Activity;
import android.os.Bundle;

public class newpage extends Activity{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.newpage);  //กำหนด layout หลัก
    }
}
จบแล้วครับทดลองดูได้เลย ผมอาจจะพิมพ์งงไปหน่อยขออภัยด้วยครับ

basdvast

Re: [Android] สร้างหน้าใหม่ใน Android ทำยังไงมาดู

Post by basdvast » 25/06/2014 1:37 am

ขอบคุณมากครับ ผมกำลังหาอยู่พอดีเลยยย. :-D :-D

Post Reply

Return to “Mobile Application Developing- Android, iOS”

Users browsing this forum: No registered users and 2 guests