งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

IT411 Mobile Programming. Topics in This Section วิธีการสร้าง Android projects  โครงสร้าง program  การสร้าง layout ด้วย Java-based  การสร้าง layout.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "IT411 Mobile Programming. Topics in This Section วิธีการสร้าง Android projects  โครงสร้าง program  การสร้าง layout ด้วย Java-based  การสร้าง layout."— ใบสำเนางานนำเสนอ:

1 IT411 Mobile Programming

2 Topics in This Section วิธีการสร้าง Android projects  โครงสร้าง program  การสร้าง layout ด้วย Java-based  การสร้าง layout ด้วย XML-based  การสร้าง layout ด้วย Eclipse ADT visual layout editor  การสร้าง layout แบบ Hybrid layout  Project structure summary

3 General Structure (Common to All Approaches)  package com.companyname.projectname;  import android.app.Activity;  import android.os.Bundle;  import android.widget.SomeLayoutOrView;  public class SomeName extends Activity {  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  SomeLayoutOrView view = createOrGetView(); ...  setContentView(R.layout.main);  } ...  }

4 Three Main Approaches  Java-based  – เป็นการสร้าง layout ด้วยภาษา Java - เหมือน Swing programming.  XML-based  – ใช้ไฟล์ XML ในการระบุ Strings และ layout window  Hybrid  –ใช้ไฟล์ XML file ในการระบุ Strings และ layout ใช้คำสั่ง Java ในการ ควบคุมเหตุการณ์ที่เกิดขึ้นบนหน้าจอ  ตัวอย่างการทำงาน  – เมื่อกดปุ่ม Button เมื่อกดปุ่ม “Show Greeting” ระบบจะแสดงข้อความ Hello from Android ผ่านทางหน้าจอ

5 Java-Based Approach: Template  public class SomeName extends Activity {  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  String message = "...";  LinearLayout window = new LinearLayout(this);  window.setVariousAttributes(…);  Button b = new Button(this);  b.setText("Button Label");  b.setOnClickListener(new SomeHandler());  window.addView(b); ...  setContentView(window);  }  private class SomeHandler implements OnClickListener {  public void onClick(View clickedButton) {  doSomething(...);  }  } }

6 XML-Based Approach: Template Java  public class SomeClass extends Activity {  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.main);  }  public void handlerMethod(View clickedButton) {  String someName = getString(R.string.some_name);  doSomethingWith(someName);  } } XML res/values/strings.xmlres/layout/main.xml …

7 Hybrid Approach: Template  Java  public class SomeClass extends Activity {  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.main);  Button b = (Button)findViewById(R.id.button_id);  b.setOnClickListener(new SomeHandler());  }  private class SomeHandler implements OnClickListener {  public void onClick(View clickedButton) {  doSomething(...);  }  } }  XML  – สร้างหน้าจอ กำหนดค่า ID  – สามารถกำหนด android:onClick ลงใน file xml เพื่อตรวจสอบเหตุการณ์การเลือกวัตถุบนหน้าจอ

8 SAMPLE: Java-Based Layout  Approach  – ใช้จาวา ระบุข้อความ layout และควบคุมเหตุการณ์ต่าง ๆ ที่เกิดขึ้นกับ อุปกรณ์  Advantages  – คำสั่งคล้ายกับ Swing และ AWT ของจาวา  – เหมาะกับ layouts ที่ต้องเปลี่ยนรูปแบบการทำงานไม่ตายตัว dynamic  Disadvantages  – แก้ไขยาก  – ไม่ทำงานในลักษณะ I18N  เป็นที่ยอมรับใน App Store เนื่องจากไม่มีข้อกำหนดการทำงานในส่วนนี้

9 Code (Main Method)  public class SayHelloJava extends Activity {  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  String appName = "SayHello Application";  String windowText = "Press the button below to receive " + "a friendly greeting from Android.";  String buttonLabel = "Show Greeting";  LinearLayout mainWindow = new LinearLayout(this);  mainWindow.setOrientation(LinearLayout.VERTICAL);  setTitle(appName);  TextView label = new TextView(this);  label.setText(windowText);  mainWindow.addView(label);  Button greetingButton = new Button(this);  greetingButton.setText(buttonLabel);  greetingButton.setOnClickListener(new Toaster());  mainWindow.addView(greetingButton);  setContentView(mainWindow);  }

10 Code (Event Handler Method)  private class Toaster implements OnClickListener {  public void onClick(View clickedButton) {  String greetingText = "Hello from Android!";  Toast tempMessage =  Toast.makeText(SayHelloJava.this,  greetingText,  Toast.LENGTH_SHORT);  tempMessage.show();  }

11 SAMPLE: XML-Based Layout  Approach  – ใช้ XML ระบุข้อความ layout และควบคุมเหตุการณ์ต่าง ๆ ที่เกิดขึ้นกับ อุปกรณ์  ระบุ layout และการควบคุมใน res/layout/main.xml  ระบุ Strings ใน res/values/strings.xml  Advantages  – แก้ไขง่าย  – สามารถใช้ layout editor ของ Eclipse ในการสร้าง  – Standard/recommended  (along with hybrid)  Disadvantages  – ไม่สามารถจัดการ dynamic layouts

12 More Details  res/layout/main.xml  – การระบค่าใน xml เริ่มจากการกำหนด layout  Define controls  – การอ้างถึงข้อมูล String (จาก strings.xml)  – การจัดการเหตุการณ์ที่เกิดขึ้นบนหน้าจอ (event handler) ใช้ android:onClick  res/values/strings.xml  – พื้นที่ในการระบุข้อความ  Java code  – ใช้อ้าง layout - R.layout.main  – ใช้อ้าง strings - getString(R.string.string_name)  – ใช้อ้าง controls - findViewById(R.id.some_id)  More info  –

13 Project Layout

14 Code (res/layout/main.xml)  


ดาวน์โหลด ppt IT411 Mobile Programming. Topics in This Section วิธีการสร้าง Android projects  โครงสร้าง program  การสร้าง layout ด้วย Java-based  การสร้าง layout.

งานนำเสนอที่คล้ายกัน


Ads by Google