20155327 實驗四 Android程序設計

20155327 實驗四 Android程序設計

任務一:

完成Hello World, 要求修改res目錄中的內容,Hello World後要顯示本身的學號java

步驟:

將佈局文件activity_main.xml中相應的內容稍作修改:android

將其中的android:text="Hello World!"改成android:text="Hello World!\n\t20155327"便可。app

運行結果以下:
ide

任務二:建立 ThirdActivity

  • 構建項目,運行教材相關代碼
  • 建立 ThirdActivity, 在ThirdActivity中顯示本身的學號,修改代碼讓MainActivity啓動ThirdActivity 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for佈局

    步驟:

    -配置Activity
    在文件AndroidManifest.xml中,只要爲application...元素添加activity...子元素,便可配置Activity。
    要調用ThirdActivity,須要在AndroidManifest.xml中再添加一個activity...>。
    -啓動、關閉Activity
    每個控制文件的Activity都須要有對應的啓動程序文件(.java),和相應的佈局文件(.xml)。
    在這個任務中,要求讓MainActivity啓動ThirdActivity,還需修改MainActivity,相應代碼段改成:
@Override
public boolean onTouch(View arg0, MotionEvent event) {
Intent intent = new Intent(this, ThirdActivity.class);
intent.putExtra("message", "20155327");
startActivity(intent);
return true;
}

運行結果如圖:學習

任務三:

  • 構建項目,運行教材相關代碼
  • 修改代碼讓Toast消息中顯示本身的學號信息

Toast是Android中用來顯示信息的一種機制。Toast顯示的時間有限,在通過一段時間後就會自動消失。
Toast有不少用法,如默認顯示、自定義顯示位置、帶圖片的顯示、徹底自定義顯示、其餘線程調用顯示等等。
activity_main:測試

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

s:context="com.dragon.toast.Main">

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="20155327"
    android:id="@+id/btn1"
    android:layout_alignParentTop="true"
    android:layout_marginTop="31dp"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

MainActivity.java:this

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnshow1 = (Button) findViewById(R.id.btn1);
btnshow1.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v){
Toast toast = Toast.makeText(MainActivity.this,"20155327", Toast.LENGTH_LONG);
toast.show();
}
});

結果以下:
線程

任務四:

  • 構建項目,運行教材相關代碼
  • 修改佈局讓P290頁的界面與教材不一樣設計

    步驟:

    P290是一個幀佈局的示例
    -幀佈局容器爲每一個組件建立一個空白區域,一個區域稱爲一幀,這些幀會根據FrameLayout中定義的gravity屬性自動對齊。
    -須要爲組件添加layout_gravity屬性,從而自定義組建的對齊方式。若是不使用layout_gravity屬性,多項內容會重疊。
    layout_gravity能夠使用以下所示的取值:
    top:將對象放在其容器的頂部,不改變其大小;
    bottom:將對象放在其容器的底部,不改變其大小;
    left:將對象放在其容器的左側,不改變其大小;
    certer_vertical:將對象縱向居中,不改變其大小,垂直方向上居中對齊;
    代碼以下:
<TextView   
    android:id="@+id/tv1"  
    android:layout_width="fill_parent"  
    android:layout_height="wrap_content"  
    android:textSize="50sp"  
    android:textColor="#000000"  
    android:text="20155303"/>  
<TextView   
    android:layout_width="fill_parent"  
    android:layout_height="wrap_content"  
    android:textSize="40sp"  
    android:textColor="#ffff00"    
    android:text="20155327"/>

任務五:事件處理測試:

  • 構建項目,運行教材相關代碼
    當用戶按下(或觸碰)時鐘的時候,會調用該方法並接受時鐘對象。要修改時鐘的顏色,須要調用其setBackgroundColor方法,傳入一個顏色對象,從而實現觸碰時鐘改變顏色。代碼以下:
int counter = 0;
int[] colors = { Color.BLACK, Color.BLUE, Color.CYAN,
Color.DKGRAY, Color.GRAY, Color.GREEN, Color.LTGRAY,
Color.MAGENTA, Color.RED, Color.WHITE, Color.YELLOW };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@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;
}
public void changeColor(View view) {
if (counter == colors.length) {
counter = 0;
}
view.setBackgroundColor(colors[counter++]);
}

運行結果以下:

相關文章
相關標籤/搜索