当前位置: 代码迷 >> Android >> Android开发从入门到精通(八) _5
  详细解决方案

Android开发从入门到精通(八) _5

热度:91   发布时间:2016-05-01 20:17:47.0
Android开发从入门到精通(8) _5

?

按钮?第八章(5)

看看下面的代码。这段代码代表了四个文件,AndroidManifest.xml,?
Button.xml,?testButton.java,?和?AndroidViews.java。增加代码到现存的AndroidViews活动中。

警告

如果你没有一开始就跟从本章,你执行代码时可能会遇到麻烦。要确保得到完整的项目,请从本章的开始开始阅读。

AndroidManifest.xml

<?xml?version="1.0"?encoding="utf-8"?>?
<manifest?xmlns:android=http://schemas.android.com/apk/res/android?
package="android_programmers_guide.AndroidViews"?
<application?android:icon="@drawable/icon">?
<activity?android:name=".AndroidViews"?
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=".AutoComplete"?android:label="AutoComplete">?
<intent-filter>?
<action?android:name="android.intent.action.MAIN"?/>?
<category?android:name="android.intent.category.LAUNCHER"/>?
</intent-filter>?
</activity>?
<activity?android:name=".testButton"?android:label="TestButton">?
<intent-filter>?
<action?android:name="android.intent.action.MAIN"?/>?
<category?android:name="android.intent.category.LAUNCHER"/>?
</intent-filter>?
</activity>?
</application>?
</manifest>


Button.xml

<?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"?
Chapter?8:?Lists,?Menus,?and?Other?Views?173?
android:layout_height="fill_parent">?
<Button?android:id="@+id/testButton"?
android:layout_width="fill_parent"?
android:layout_height="wrap_content"?
android:text="This?is?the?test?Button"/>?
<Button?android:id="@+id/layoutButton"?
android:layout_width="fill_parent"?
android:layout_height="wrap_content"?
android:text="Change?Layout"/>?
<Button?android:id="@+id/textColorButton"?
android:layout_width="fill_parent"?
android:layout_height="wrap_content"?
android:text="Change?Text?Color"/>?
</LinearLayout>


testButton.java

package?android_programmers_guide.AndroidViews;?
import?android.app.Activity;?
import?android.os.Bundle;?
import?android.view.View;?
import?android.widget.Button;?
import?android.graphics.Color;?
public?class?testButton?extends?Activity?{?
@Override?
public?void?onCreate(Bundle?icicle)?{?
super.onCreate(icicle);?
setContentView(R.layout.Button);?
final?Button?Button?=?(Button)?findViewById(R.id.testButton);?
final?Button?changeButton?=?(Button)findViewById(R.id.layoutButton);?
changeButton.setOnClickListener(new?Button.OnClickListener()?{?
public?void?onClick(View?v){?
changeOption(Button);?}?
});?
final?Button?changeButton2?=?(Button)?
findViewById(R.id.textColorButton);?
changeButton2.setOnClickListener(new?Button.OnClickListener()?{?
public?void?onClick(View?v){?
changeOption2(Button);?
}?
});?
}?
public?void?changeOption(Button?Button){?
if?(Button.getHeight()==100){?
Button.setHeight(30);?
}?
174?Android:?A?Programmer’s?Guide?
Chapter?8:?Lists,?Menus,?and?Other?Views?175?
else{?
Button.setHeight(100);?
}?
}?
public?void?changeOption2(Button?Button){?
Button.setTextColor(Color.RED);?
}?
}


AndroidViews.java

package?android_programmers_guide.AndroidViews;?
import?android.app.Activity;?
import?android.os.Bundle;?
import?android.view.Menu;?
import?android.content.Intent;?
public?class?AndroidViews?extends?Activity?{?
/**?Called?when?the?Activity?is?first?created.?*/?
@Override?
public?void?onCreate(Bundle?icicle)?{?
super.onCreate(icicle);?
setContentView(R.layout.main);?
}?
@Override?
public?boolean?onCreateOptionsMenu(Menu?menu)?{?
super.onCreateOptionsMenu(menu);?
menu.add(0,?0,?"AutoComplete");?
menu.add(0,?1,?"Button");?
menu.add(0,?2,?"CheckBox");?
menu.add(0,?3,?"EditText");?
menu.add(0,?4,?"RadioGroup");?
menu.add(0,?5,?"Spinner");?
return?true;?
}?
@Override?
public?boolean?onOptionsItemSelected(Menu.Item?item){?
switch?(item.getId())?{?
case?0:?
showAutoComplete();?
return?true;?
case?1:?
showButton();?
return?true;?
case?2:?
return?true;?
case?3:?
return?true;?
case?4:?
return?true;?
case?5:?
return?true;?
}?
return?true;?
}?
public?void?showButton()?{?
Intent?showButton?=?new?Intent(this,?testButton.class);?
startActivity(showButton);?
}?
public?void?showAutoComplete(){?
Intent?autocomplete?=?new?Intent(this,?AutoComplete.class);?
startActivity(autocomplete);?
}?
}?


启动你的应用程序并且选择从菜单上选择按钮选项。试着点击Change?Layout按钮。再一次,对文本来说,结果是一个较宽的显示区域,点击改变Text?Color按钮并且文本变成红色。

更多信息请查看?http://www.javady.com/index.php/category/thread

  相关解决方案