1 在1。5的android中,可以指定edittext中只输入数字,比如可以这样,就弹出小键盘了:
android:inputType="numberDecimal",这样还可以接受输入包含小数点的数字了。

2 读取资源文件中的内容
result.setText(getText(R.String.bmi_result));
注意使用getText函数,读取资源文件中的内容.


3 做一个象”关于我们“的对话框:
new AlertDialog.Builder(Bmi.this)
.setTitle(R.string.about_title)
.setMessage(R.string.about_msg)
.setPositiveButton("确认",
new DialogInterface.OnClickListener(){
public void onClick(
DialogInterface dialoginterface, int i){
}
})
.show();

4 toast组件:显示短的提示消息,过几秒之后就消失:
Toast.makeText(Bmi.this, "关于我们", Toast.LENGTH_SHORT).show();
5 url的打开
new AlertDialog.Builder(Bmi.this)
.setNegativeButton(R.string.homepage_label,
new DialogInterface.OnClickListener(){
public void onClick(
DialogInterface dialoginterface, int i){
//go to url
Uri uri = Uri.parse("http://sites.google.com/site/gasodroid/");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}
})
.show();
也可以把URI写到资源文件中去,
Uri uri=uri.parase(getString(R.string.homepage_uri));

6 menu菜单
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
menu.add(0, MENU_ABOUT, 0, "关于").setIcon(R.drawable.help_browser);
menu.add(0, MENU_Quit, 0, "结束").setIcon(R.drawable.emblem_unreadable);
return super.onCreateOptionsMenu(menu);
}
处理menu的点击动作
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch(item.getItemId()) {
case MENU_ABOUT:
openOptionsDialog();
break;
case MENU_Quit:
finish();
break;
}
return super.onOptionsItemSelected(item);
}
7 <activity android:name=".Bmi"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>、
这里指出了启动的类是Bmi这个类,,<intent-filter>讲明了这个程序的性质,其中
<action android:name="android.intent.action.MAIN" />讲明了这个BMI是程序的切入点,
<category android:name="android.intent.category.LAUNCHER" />讲明这个出现在程序的lanucher列表中

8 intent之间传递数据
Intent intent = new Intent();
intent.setClass(Bmi.this, Report.class);
Bundle bundle = new Bundle();
bundle.putString("KEY_HEIGHT", field_height.getText().toString());
bundle.putString("KEY_WEIGHT", field_weight.getText().toString());
intent.putExtras(bundle);
startActivity(intent);
接收信息:
Bundle bunde = this.getIntent().getExtras();
double height = Double.parseDouble(bunde.getString("KEY_HEIGHT"))/100;
9 使用状态拦信息
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;

NotificationManager barManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

Notification barMsg = new Notification(
R.drawable.icon_128,
"HI",
System.currentTimeMillis()
);

barMsg.defaults |= Notification.DEFAULT_SOUND;
//barMsg.defaults |= Notification.DEFAULT_ALL;

PendingIntent contentIntent = PendingIntent.getActivity(
this,
0,
new Intent(this, Bmi.class),
PendingIntent.FLAG_UPDATE_CURRENT);

barMsg.setLatestEventInfo(
Report.this,
"HI",
"OK",
contentIntent);

barManager.notify(0, barMsg);

NotificationManager barManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
声明管理器,
Notification barMsg = new Notification(
R.drawable.icon_128,
"HI",
System.currentTimeMillis()
);
中声明提醒信息,System.currentTimeMillis()表示立刻显示;
barMsg.setLatestEventInfo(
Report.this,
"HI",
"OK",
contentIntent);
这里是添加状态栏的详细信息,这里的“HI”是显示的主题,第三个参数,这里的‘OK’是说明,
contentIntent这个参数指明当点状态栏时,相应打开的intent.

10 保存优先级的设置:
private void restorePrefs() {
SharedPreferences settings = getSharedPreferences(PREF, 0);
String pref_height = settings.getString(PREF_HEIGHT, "");

}
这里是找系统中是否以"BMI_PREF"字符串作为文件名的优先级设置的文件,有的话,以settings做为代号来操作
当用户离开activity时,把值进行保存,重写onPause()函数:
super.onPause();
// Save user preferences. use Editor object to make changes.
SharedPreferences settings = getSharedPreferences(PREF, 0);
settings.edit()
.putString(PREF_HEIGHT, field_height.getText().toString())
.commit();

11 多语言界面并存:
比如原来的是英文,则res目录下放values,中文的话,在res目录下再放一个values-zh-rTW
其中zh是主语系,-r是必须的,后面跟分支
Resources res = getResources();
Configuration conf = res.getConfiguration();
conf.locale = Locale.TRADITIONAL_CHINESE;
DisplayMetrics dm = res.getDisplayMetrics();
res.updateConfiguration(conf, dm);
这里是强制使用中文界面,在程序中,针对不同语言提供不同的界面:
if (conf.locale==Local.TRADITIONAL_CHINESE)
12 Spinner下拉菜单中的选择事件:

field_feet.setOnItemSelectedListener(getFeet);
private Spinner.OnItemSelectedListener getFeet = new Spinner.OnItemSelectedListener() {
public void onItemSelected(AdapterView parent, View v, int position, long id) {
。。。。。。
}
public void onNothingSelected(AdapterView parent) {
}
};

更多相关文章

  1. Android Studio开发JNI - 第一个JNI程序
  2. 第一个PhoneGap程序以及错误解决
  3. Android 根文件系统分析(1)
  4. [android] 保存文件到手机内存
  5. Android 将APK文件安装到AVD中并分析其界面结构
  6. 测试你的Android应用程序
  7. Android:theme="@android:style/Theme.Dialog"运行程序报错
  8. 移动开发:fb的-app.xml文件

随机推荐

  1. 【杂记】一些小知识点,在这里记录一下。
  2. Android(安卓)滑动悬浮置顶指南
  3. Android快速开发框架dyh详解(二)---控件
  4. Android再按一次完全退出程序代码
  5. Androd学习笔记—— Android刷新本地相册
  6. 【转】Android(安卓)string.xml 展示特殊
  7. (4.4.1.1)Android内存篇:android的内存管理
  8. Android(安卓)中SwipeRefreshLayout刷新
  9. 解决方案:公众号h5页面开发时微信自带返回
  10. Android(安卓)ListView Adapter的getItem