- 浏览: 5825316 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (890)
- WindowsPhone (0)
- android (88)
- android快速迭代 (17)
- android基础 (34)
- android进阶 (172)
- android高级 (0)
- android拾遗 (85)
- android动画&效果 (68)
- Material Design (13)
- LUA (5)
- j2me (32)
- jQuery (39)
- spring (26)
- hibernate (20)
- struts (26)
- tomcat (9)
- javascript+css+html (62)
- jsp+servlet+javabean (14)
- java (37)
- velocity+FCKeditor (13)
- linux+批处理 (9)
- mysql (19)
- MyEclipse (9)
- ajax (7)
- wap (8)
- j2ee+apache (24)
- 其他 (13)
- phonegap (35)
最新评论
-
Memories_NC:
本地lua脚本终于执行成功了,虽然不是通过redis
java中调用lua脚本语言1 -
ZHOU452840622:
大神://处理返回的接收状态 这个好像没有监听到 遇 ...
android 发送短信的两种方式 -
PXY:
拦截部分地址,怎么写的for(int i=0;i<lis ...
判断是否登录的拦截器SessionFilter -
maotou1988:
Android控件之带清空按钮(功能)的AutoComplet ...
自定义AutoCompleteTextView -
yangmaolinpl:
希望有表例子更好。。。,不过也看明白了。
浅谈onInterceptTouchEvent、onTouchEvent与onTouch
如何取得手机号码,手机串号,sim卡序列号?
注:并不是所有手机都能取到本机号码,中国电信手机(133)取不到号码。
如何让Activity失去任何按键和点击反应?
当我们链接网络时需要显示一个ProgressBar让用户等待。
但是这个时候点击屏幕上任何东西都是无效的,这个怎么设置?不能用ProgressDialog!
如何将中文设置成粗体?
在xml文件中使用android:textStyle="bold" 可以将英文设置成粗体,但是不能将中文设置成粗体,将中文设置成粗体的方法是:
TextView tv = (TextView)findViewById(R.id.TextView01);
TextPaint tp = tv.getPaint();
tp.setFakeBoldText(true);
如何实现半透明的弹出框?
只需要把Manifest文件中注册的activity中添加android:theme="@android:style/Theme.Dialog"就可以了。如:
<activity android:name=".SettingActivity" android:label="@string/app_name" android:icon="@drawable/icon" android:theme="@android:style/Theme.Dialog"></activity>
如何实现在自己的程序中点击一个按钮,然后弹出系统自带的联系人?
如何打电话,发短信...等等?
1,调web浏览器
Uri myBlogUri = Uri.parse("http://xxxxx.com");
returnIt = new Intent(Intent.ACTION_VIEW, myBlogUri);
2,地图
Uri mapUri = Uri.parse("geo:38.899533,-77.036476");
returnIt = new Intent(Intent.ACTION_VIEW, mapUri);
3,调拨打电话界面
Uri telUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_DIAL, telUri);
4,直接拨打电话
Uri callUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_CALL, callUri);
5,卸载
Uri uninstallUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_DELETE, uninstallUri);
6,安装
Uri installUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);
7,播放
Uri playUri = Uri.parse("file:///sdcard/download/everything.mp3");
returnIt = new Intent(Intent.ACTION_VIEW, playUri);
8,掉用发邮件
Uri emailUri = Uri.parse("mailto:xxxx@gmail.com");
returnIt = new Intent(Intent.ACTION_SENDTO, emailUri);
9,发邮件
returnIt = new Intent(Intent.ACTION_SEND);
String[] tos = { "xxxx@gmail.com" };
String[] ccs = { "xxxx@gmail.com" };
returnIt.putExtra(Intent.EXTRA_EMAIL, tos);
returnIt.putExtra(Intent.EXTRA_CC, ccs);
returnIt.putExtra(Intent.EXTRA_TEXT, "body");
returnIt.putExtra(Intent.EXTRA_SUBJECT, "subject");
returnIt.setType("message/rfc882");
Intent.createChooser(returnIt, "Choose Email Client");
10,发短信
Uri smsUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_VIEW, smsUri);
returnIt.putExtra("sms_body", "yyyy");
returnIt.setType("vnd.android-dir/mms-sms");
11,直接发邮件
Uri smsToUri = Uri.parse("smsto://100861");
returnIt = new Intent(Intent.ACTION_SENDTO, smsToUri);
returnIt.putExtra("sms_body", "yyyy");
12,发彩信
Uri mmsUri = Uri.parse("content://media/external/images/media/23");
returnIt = new Intent(Intent.ACTION_SEND);
returnIt.putExtra("sms_body", "yyyy");
returnIt.putExtra(Intent.EXTRA_STREAM, mmsUri);
returnIt.setType("image/png");
最后一步:
startActivity(returnIt)
如何把Button或者ImageButton的背景设为透明或者半透明?
android:background=”@android:color/transparent”
or
android:background="@null"
or
半透明<Button android:background="#e0000000"/>
透明<Button android:background="#00000000"/>
如何在TextView显示HTML?
TextView tv=(TextView)findViewById(R.id.tv);
Spanned text = Html.fromHtml("<a href='http://www.baidu.com'>baidu</a>");
tv.setText(text);
如果html中有图片,请参考这篇文章:
http://da-en.iteye.com/blog/712415
如何修改软键盘默认为数字输入?
EditText editText = (EditText) findViewById(R.id.et);
editText.setInputType(InputType.TYPE_CLASS_NUMBER);
如何阻止EditText自动弹出输入法?
还可以试试:
如何设置半透明效果?
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint paint = new Paint();
paint.setColor(Color.BLUE);
paint.setAlpha(0x40);
canvas.drawXXX(...);
}
注意setColor和setAlpha的位置不要颠倒,否则无效!
如何让TextView中的文字居中显示?
android:gravity="center"
如何删除模拟器上安装的apk?
android中文资源
http://www.cnblogs.com/over140/default.html?page=1
如何自定义标题栏?
R.layout.title对应的布局文件:
效果如下:
这里需要注意,最好不要修改背景色,否则会出现标题栏不会被充满的问题(会露马脚啦:)),如果确实需要修改背景色又不漏马脚,那么请看这篇文章:
http://www.iteye.com/topic/760314
在View中绘制文本,如何获得文本高度和宽度?
FontMetrics对象的四个基本坐标基准分别为:
・FontMetrics.top
・FontMetrics.ascent
・FontMetrics.descent
・FontMetrics.bottom
获得高度:
FontMetrics fm = paint.getFontMetrics();// 得到系统默认字体属性
float fontHeight = fm.descent - fm.top;// 获得字体高度
也可以这样:
float fontHeight = fm.bottom - fm.top;// 获得字体高度,与上面稍微有些差别,见图。
还可以这样:
paint.getTextSize();// 获得字体高度,简单一点就这样啦,区别不是太大。
获得宽度:
paint.getTextWidths(text, widths[]),widths是每个字符的宽度,维度不小于字符数。
还可以这样:
paint.measureText(text)
canvas.drawText("坐标测试", 0, 0, paint);//在屏幕上能看见吗?(不全屏的话)
canvas.drawText("坐标测试", 0, paint.getTextSize(), paint);//这个可以看到
canvas.drawText("坐标测试", 0, fontMetrics.bottom-fontMetrics.top, paint);//这个也可以看到
startManagingCursor(cursor)的作用是什么?
startManagingCursor可以让cursor也纳入到Activity的生命周期里。比如当activity stopped,就自动调用cursor.deactivate();当activity restarted,就自动调用cursor.requery()。省事!
通常都是这样使用:
Cursor cursor=db.query(XXX);//db为SQLiteDatabase对象
startManagingCursor(cursor);
startActivity(intent)和startActivityForResult(intent, requestCode)有什么区别?
startActivity(Intent)用于界面的跳转;
startActivityForResult()用于界面的相互跳转,比如Activity1 跳转到 Activity2,但是还需要在Activity2 再回到 Activity1呢? 可能有人说: 那我在Activity2 再使用 startActivity() 不就可以了,是的。但是startActivityForResult能够直接完成这项工作。
其中int requestCode:用于标识该Intent 回来后确定是不是想要的返回。
setResut(int resultCode, Intent intent)
resultCode 如果子模块可能有几种不同的结果返回,可以用这个参数予以识别区分。如果成功可以使用 RESULT_OK 值。之后可以在回调函数
中处理需要做的事情。
ListView中getSelectedItemId()和getSelectedItemPosition()有和区别?
getSelectedItemId()获得的是对应数据库(如果使用了sqlite)中记录的id;比如:屏幕上看到的第3项,并不一定是数据库中的第3项。getSelectedItemId()获得的就是数据库中的第几项!这个很重要!操作数据的时候不会错乱了。
getSelectedItemPosition()获得的是绝对位置,就是指屏幕中第几项,从0开始。
长按菜单ContextMenu中如何获得ListView中的item?
如何通过Button弹出Menu?
this.openOptionsMenu();
android中如何清屏?
canvas.drawColor(Color.BLACK);
如何改变Dialog背景透明度?
如何隐藏状态栏?
隐藏 状态栏 即:最上方的信号强度 3G网络 等属性
如何隐藏标题栏?
即:应用程序名称的那一栏
如何设置横屏?
如何取得屏幕宽高?
Android获取屏幕高度、标题高度、状态栏高度详解
http://www.iteye.com/topic/828830
如何设置屏幕方向?
可以在AndroidManifest.xml 文件中,通过<activity> 标记的screenOrientation 属性进行设定,例如:
screenOrientations属性共有7中可选值(常量定义在 android.content.pm.ActivityInfo类中 ) :
landscape:横屏(风景照) ,显示时宽度大于高度;
portrait:竖屏 (肖像照) , 显示时 高 度大于 宽 度 ;
user:用户当前的首选方向;
behind:继承Activity堆栈中当前Activity下面的那个Activity的方向;
sensor:由物理感应器决定显示方向,它取决于用户如何持有设备,当 设备 被旋转时方向会随之变化——在横屏与竖屏之间;
nosensor:忽略物理感应器——即显示方向与物理感应器无关,不管用户如何旋转设备显示方向都不会随着改变("unspecified"设置除外);
unspecified :未指定,此为默认值,由Android系统自己选择适当的方向,选择策略视具体设备的配置情况而定,因此不同的设备会有不同的方向选择;
也可以在代码中设置屏幕方向,例如:
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);//设置横屏
如何判断横竖屏?
在activity中重写这个方法
@Override
public void onConfigurationChanged(Configuration newConfig) {
// TODO Auto-generated method stub
super.onConfigurationChanged(newConfig);
if (this.getResources().getConfiguration().orientation ==
Configuration.ORIENTATION_PORTRAIT) {//竖屏
//doSomrthing
} else {
//横屏时dosomething
}
}
每一次横屏和竖屏都会调用这个方法
如何实现国际化?
比如需要程序在中文和英文环境中切换,
首先在工程res文件夹中依次新建values-en和values-zh-rCN等资源文件夹,将string.xml文件翻译成英文,放入相应的资源文件夹内。
然后在模拟器主菜单中依次选择setting->Locale&Text->Select Locale,选择需要的语言即可。当找不到相应的语言系时,默认使用values文件夹下的string.xml
values目录名称与改写后对应的支持语言关系如下:
values-zh-rCN,简体中文
values-zh-rTW,繁体中文
values-ja,日文
values-en,英文
values-en-rUS,美式英文
values-en-rUK,英式英文
如何在程序中通过button切换中英文环境?
基本代码如下(按了button后需要退回到主菜单,然后再进入程序语言环境就变了):
如何手动签名应用程序?
1,打包成未签名apk包
在工程上右击,选择Android Tools->Export Unsigned Application Package
2,生成密钥
打开cmd,并进入cd C:\Program Files\Java\jdk1.6.0_20\bin
keytool -genkey -v -keystore XXX.keystore -alias XXX.keystore -keyalg RSA -validity 20000
然后依次输入各项即可
3,开始签名
jarsigner -verbose -keystore XXX.keystore -signedjar 你的应用名称_signed.apk 你的应用名称.apk XXX.keystore
4,验证密钥(非必需,但建议)
jarsigner -verify -verbose -certs 你的应用名称_signed.apk
如何使用eclipse自动生成已验证的apk包?
如果觉得手动签名比较麻烦,那么使用自动签名吧。
在工程上右击,选择Android Tools->Export Application Package
然后依次填入各项,这里特别注意Keystore selection这一步,如果已生成keystore,则选第一项;如果还没有,则选第二项。
TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE); String deviceid = tm.getDeviceId(); String tel = tm.getLine1Number(); //本机号码 String imei =tm.getSimSerialNumber(); String imsi =tm.getSubscriberId(); res.setText(deviceid+"#"+tel+"#"+imei+"#"+imsi);
注:并不是所有手机都能取到本机号码,中国电信手机(133)取不到号码。
如何让Activity失去任何按键和点击反应?
当我们链接网络时需要显示一个ProgressBar让用户等待。
但是这个时候点击屏幕上任何东西都是无效的,这个怎么设置?不能用ProgressDialog!
@Override public boolean dispatchKeyEvent(KeyEvent event) { // TODO Auto-generated method stub if (progress.isShown()) { return true; } else { return super.dispatchKeyEvent(event); } } @Override public boolean dispatchTouchEvent(MotionEvent ev) { // TODO Auto-generated method stub if (progress.isShown()) { return true; } else { return super.dispatchTouchEvent(ev); } } @Override public boolean dispatchTrackballEvent(MotionEvent ev) { // TODO Auto-generated method stub if (progress.isShown()) { return true; } else { return super.dispatchTrackballEvent(ev); } }
如何将中文设置成粗体?
在xml文件中使用android:textStyle="bold" 可以将英文设置成粗体,但是不能将中文设置成粗体,将中文设置成粗体的方法是:
TextView tv = (TextView)findViewById(R.id.TextView01);
TextPaint tp = tv.getPaint();
tp.setFakeBoldText(true);
如何实现半透明的弹出框?
只需要把Manifest文件中注册的activity中添加android:theme="@android:style/Theme.Dialog"就可以了。如:
<activity android:name=".SettingActivity" android:label="@string/app_name" android:icon="@drawable/icon" android:theme="@android:style/Theme.Dialog"></activity>
如何实现在自己的程序中点击一个按钮,然后弹出系统自带的联系人?
button.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setData(ContactsContract.Contacts.CONTENT_URI);//android2.X startActivity(intent); } });
如何打电话,发短信...等等?
1,调web浏览器
Uri myBlogUri = Uri.parse("http://xxxxx.com");
returnIt = new Intent(Intent.ACTION_VIEW, myBlogUri);
2,地图
Uri mapUri = Uri.parse("geo:38.899533,-77.036476");
returnIt = new Intent(Intent.ACTION_VIEW, mapUri);
3,调拨打电话界面
Uri telUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_DIAL, telUri);
4,直接拨打电话
Uri callUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_CALL, callUri);
5,卸载
Uri uninstallUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_DELETE, uninstallUri);
6,安装
Uri installUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);
7,播放
Uri playUri = Uri.parse("file:///sdcard/download/everything.mp3");
returnIt = new Intent(Intent.ACTION_VIEW, playUri);
8,掉用发邮件
Uri emailUri = Uri.parse("mailto:xxxx@gmail.com");
returnIt = new Intent(Intent.ACTION_SENDTO, emailUri);
9,发邮件
returnIt = new Intent(Intent.ACTION_SEND);
String[] tos = { "xxxx@gmail.com" };
String[] ccs = { "xxxx@gmail.com" };
returnIt.putExtra(Intent.EXTRA_EMAIL, tos);
returnIt.putExtra(Intent.EXTRA_CC, ccs);
returnIt.putExtra(Intent.EXTRA_TEXT, "body");
returnIt.putExtra(Intent.EXTRA_SUBJECT, "subject");
returnIt.setType("message/rfc882");
Intent.createChooser(returnIt, "Choose Email Client");
10,发短信
Uri smsUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_VIEW, smsUri);
returnIt.putExtra("sms_body", "yyyy");
returnIt.setType("vnd.android-dir/mms-sms");
11,直接发邮件
Uri smsToUri = Uri.parse("smsto://100861");
returnIt = new Intent(Intent.ACTION_SENDTO, smsToUri);
returnIt.putExtra("sms_body", "yyyy");
12,发彩信
Uri mmsUri = Uri.parse("content://media/external/images/media/23");
returnIt = new Intent(Intent.ACTION_SEND);
returnIt.putExtra("sms_body", "yyyy");
returnIt.putExtra(Intent.EXTRA_STREAM, mmsUri);
returnIt.setType("image/png");
最后一步:
startActivity(returnIt)
如何把Button或者ImageButton的背景设为透明或者半透明?
android:background=”@android:color/transparent”
or
android:background="@null"
or
半透明<Button android:background="#e0000000"/>
透明<Button android:background="#00000000"/>
如何在TextView显示HTML?
TextView tv=(TextView)findViewById(R.id.tv);
Spanned text = Html.fromHtml("<a href='http://www.baidu.com'>baidu</a>");
tv.setText(text);
如果html中有图片,请参考这篇文章:
http://da-en.iteye.com/blog/712415
如何修改软键盘默认为数字输入?
EditText editText = (EditText) findViewById(R.id.et);
editText.setInputType(InputType.TYPE_CLASS_NUMBER);
如何阻止EditText自动弹出输入法?
//EditText有焦点阻止输入法弹出 editText.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub //记住EditText的InputType现在是password int inType = editText.getInputType(); // backup the input type editText.setInputType(InputType.TYPE_NULL); // disable soft input editText.onTouchEvent(event); // call native handler editText.setInputType(inType); // restore input type editText.setSelection(editText.getText().length()); return true; } });
还可以试试:
EditText et=(EditText)findViewById(R.id.edit); et.setInputType(InputType.TYPE_NULL);
如何设置半透明效果?
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint paint = new Paint();
paint.setColor(Color.BLUE);
paint.setAlpha(0x40);
canvas.drawXXX(...);
}
注意setColor和setAlpha的位置不要颠倒,否则无效!
如何让TextView中的文字居中显示?
android:gravity="center"
如何删除模拟器上安装的apk?
android中文资源
http://www.cnblogs.com/over140/default.html?page=1
如何自定义标题栏?
//首先需要请求对FEATURE_CUSTOM_TITLE操作 requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); view = new SnakeView(this); setContentView(view); //然后设置 getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);
R.layout.title对应的布局文件:
<?xml version="1.0" encoding="UTF-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/title" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:layout_gravity="center" android:gravity="center" android:text="Snake" android:textColor="@color/red" /> </LinearLayout>
效果如下:
这里需要注意,最好不要修改背景色,否则会出现标题栏不会被充满的问题(会露马脚啦:)),如果确实需要修改背景色又不漏马脚,那么请看这篇文章:
http://www.iteye.com/topic/760314
在View中绘制文本,如何获得文本高度和宽度?
FontMetrics对象的四个基本坐标基准分别为:
・FontMetrics.top
・FontMetrics.ascent
・FontMetrics.descent
・FontMetrics.bottom
获得高度:
FontMetrics fm = paint.getFontMetrics();// 得到系统默认字体属性
float fontHeight = fm.descent - fm.top;// 获得字体高度
也可以这样:
float fontHeight = fm.bottom - fm.top;// 获得字体高度,与上面稍微有些差别,见图。
还可以这样:
paint.getTextSize();// 获得字体高度,简单一点就这样啦,区别不是太大。
获得宽度:
paint.getTextWidths(text, widths[]),widths是每个字符的宽度,维度不小于字符数。
还可以这样:
paint.measureText(text)
canvas.drawText("坐标测试", 0, 0, paint);//在屏幕上能看见吗?(不全屏的话)
canvas.drawText("坐标测试", 0, paint.getTextSize(), paint);//这个可以看到
canvas.drawText("坐标测试", 0, fontMetrics.bottom-fontMetrics.top, paint);//这个也可以看到
startManagingCursor(cursor)的作用是什么?
startManagingCursor可以让cursor也纳入到Activity的生命周期里。比如当activity stopped,就自动调用cursor.deactivate();当activity restarted,就自动调用cursor.requery()。省事!
通常都是这样使用:
Cursor cursor=db.query(XXX);//db为SQLiteDatabase对象
startManagingCursor(cursor);
startActivity(intent)和startActivityForResult(intent, requestCode)有什么区别?
startActivity(Intent)用于界面的跳转;
startActivityForResult()用于界面的相互跳转,比如Activity1 跳转到 Activity2,但是还需要在Activity2 再回到 Activity1呢? 可能有人说: 那我在Activity2 再使用 startActivity() 不就可以了,是的。但是startActivityForResult能够直接完成这项工作。
其中int requestCode:用于标识该Intent 回来后确定是不是想要的返回。
setResut(int resultCode, Intent intent)
resultCode 如果子模块可能有几种不同的结果返回,可以用这个参数予以识别区分。如果成功可以使用 RESULT_OK 值。之后可以在回调函数
protected void onActivityResult(int requestCode, int resultCode, Intent data){ super.onActivityResult(requestCode, resultCode, data); switch (resultCode) { case RESULT_OK: doSomething(); break; } }
中处理需要做的事情。
ListView中getSelectedItemId()和getSelectedItemPosition()有和区别?
getSelectedItemId()获得的是对应数据库(如果使用了sqlite)中记录的id;比如:屏幕上看到的第3项,并不一定是数据库中的第3项。getSelectedItemId()获得的就是数据库中的第几项!这个很重要!操作数据的时候不会错乱了。
getSelectedItemPosition()获得的是绝对位置,就是指屏幕中第几项,从0开始。
长按菜单ContextMenu中如何获得ListView中的item?
public boolean onContextItemSelected(MenuItem item) { // TODO Auto-generated method stub AdapterContextMenuInfo info=(AdapterContextMenuInfo)item.getMenuInfo();//MenuItem中的信息全在AdapterContextMenuInfo中被封装 switch (item.getItemId()) { case Menu.FIRST: doSomething(info.id);//注意这里 return true; case Menu.FIRST+1: doOthers(info.id); return true; default: break; } return super.onContextItemSelected(item); }
如何通过Button弹出Menu?
this.openOptionsMenu();
android中如何清屏?
canvas.drawColor(Color.BLACK);
如何改变Dialog背景透明度?
Dialog dg = new Dialog(this); Window window = dg.getWindow(); WindowManager.LayoutParams lp = window.getAttributes(); lp.alpha = 0.5f; window.setAttributes(lp); //lp.alpha = 0.5f 透明度设置 其值要合理 自己反复测试 //为什么要这个技巧 因为很多人说:弹出Dialog会导致背景变暗 有Animation发生 导致性能变慢 可以用这个改变之 而且可以借助这个 使得全透明 不挡住Dialog后面内容的显示
如何隐藏状态栏?
隐藏 状态栏 即:最上方的信号强度 3G网络 等属性
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 其它使用: this.getWindow().setFlags(WindowManager.LayoutParams.TYPE_STATUS_BAR, WindowManager.LayoutParams.TYPE_STATUS_BAR);
如何隐藏标题栏?
即:应用程序名称的那一栏
//注意:2行代码的先后顺序不能颠倒 requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main); //同时使用隐藏状态栏可以使可视面积最大化! 或者也可以在Manifest文件中这样设置: <application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar">
如何设置横屏?
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
如何取得屏幕宽高?
DisplayMetrics dm=new DisplayMetrics(); this.getWindowManager().getDefaultDisplay().getMetrics(dm); int screenWidth=dm.widthPixels; int screenHeight=dm.heightPixels;
Android获取屏幕高度、标题高度、状态栏高度详解
http://www.iteye.com/topic/828830
如何设置屏幕方向?
可以在AndroidManifest.xml 文件中,通过<activity> 标记的screenOrientation 属性进行设定,例如:
<activity android:name=".SketchpadActivity" android:screenOrientation="landscape"/><!--让该Activity总是显示为横屏-->
screenOrientations属性共有7中可选值(常量定义在 android.content.pm.ActivityInfo类中 ) :
landscape:横屏(风景照) ,显示时宽度大于高度;
portrait:竖屏 (肖像照) , 显示时 高 度大于 宽 度 ;
user:用户当前的首选方向;
behind:继承Activity堆栈中当前Activity下面的那个Activity的方向;
sensor:由物理感应器决定显示方向,它取决于用户如何持有设备,当 设备 被旋转时方向会随之变化——在横屏与竖屏之间;
nosensor:忽略物理感应器——即显示方向与物理感应器无关,不管用户如何旋转设备显示方向都不会随着改变("unspecified"设置除外);
unspecified :未指定,此为默认值,由Android系统自己选择适当的方向,选择策略视具体设备的配置情况而定,因此不同的设备会有不同的方向选择;
也可以在代码中设置屏幕方向,例如:
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);//设置横屏
如何判断横竖屏?
在activity中重写这个方法
@Override
public void onConfigurationChanged(Configuration newConfig) {
// TODO Auto-generated method stub
super.onConfigurationChanged(newConfig);
if (this.getResources().getConfiguration().orientation ==
Configuration.ORIENTATION_PORTRAIT) {//竖屏
//doSomrthing
} else {
//横屏时dosomething
}
}
每一次横屏和竖屏都会调用这个方法
如何实现国际化?
比如需要程序在中文和英文环境中切换,
首先在工程res文件夹中依次新建values-en和values-zh-rCN等资源文件夹,将string.xml文件翻译成英文,放入相应的资源文件夹内。
然后在模拟器主菜单中依次选择setting->Locale&Text->Select Locale,选择需要的语言即可。当找不到相应的语言系时,默认使用values文件夹下的string.xml
values目录名称与改写后对应的支持语言关系如下:
values-zh-rCN,简体中文
values-zh-rTW,繁体中文
values-ja,日文
values-en,英文
values-en-rUS,美式英文
values-en-rUK,英式英文
如何在程序中通过button切换中英文环境?
基本代码如下(按了button后需要退回到主菜单,然后再进入程序语言环境就变了):
locale=(Button)findViewById(R.id.locale); locale.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Resources res=getResources(); Configuration config=res.getConfiguration(); if(config.locale==Locale.SIMPLIFIED_CHINESE){ config.locale=Locale.ENGLISH; }else{ config.locale=Locale.SIMPLIFIED_CHINESE; } DisplayMetrics dm=res.getDisplayMetrics(); res.updateConfiguration(config, dm); } });
如何手动签名应用程序?
1,打包成未签名apk包
在工程上右击,选择Android Tools->Export Unsigned Application Package
2,生成密钥
打开cmd,并进入cd C:\Program Files\Java\jdk1.6.0_20\bin
keytool -genkey -v -keystore XXX.keystore -alias XXX.keystore -keyalg RSA -validity 20000
然后依次输入各项即可
3,开始签名
jarsigner -verbose -keystore XXX.keystore -signedjar 你的应用名称_signed.apk 你的应用名称.apk XXX.keystore
4,验证密钥(非必需,但建议)
jarsigner -verify -verbose -certs 你的应用名称_signed.apk
如何使用eclipse自动生成已验证的apk包?
如果觉得手动签名比较麻烦,那么使用自动签名吧。
在工程上右击,选择Android Tools->Export Application Package
然后依次填入各项,这里特别注意Keystore selection这一步,如果已生成keystore,则选第一项;如果还没有,则选第二项。
发表评论
-
某些android手机获取不到IMEI问题
2018-08-21 14:17 7635某些山寨机可能拿不到IMEI 如果非要IMEI可以模拟一个 ... -
APK安装成功后点击"打开"再按Home键应用会重启的问题
2018-08-21 14:13 2773安装系统SD卡里面的apk或者原有的程序更新版本的时候, ... -
使用volley链接Https地址时报SSLHandshakeException
2018-08-21 14:06 2139在真实设备上出现以下错误 ︰ Volley error: ... -
PhotoView+Viewpager双指缩放的时候出现pointerIndex out of range问题
2017-07-10 14:30 4246PhotoView+Viewpager开发图集效果的时候,在某 ... -
Android6.0权限封装
2017-04-01 12:04 1573简介 Android6.0中对权限分为了一般权限和危险权限。 ... -
实现点击 WebView 中的图片,调用原生控件展示图片
2017-04-01 11:14 2813现在有很多时候,我们的 App 都进行了混合开发,而最简单,最 ... -
Android 方法引用数超过 65535 优雅解决
2017-03-31 09:37 1550随着应用不断迭代更新,业务线的扩展,应用越来越大(比如:集成了 ... -
android引用资源@与属性?备忘单
2017-03-30 10:09 1291几天前我偶然发现了我A ... -
ViewPager 与SwipeRefreshLayout,RecyclerView,ScrollView滑动冲突解决方法
2017-03-30 09:55 6569ViewPager 作为一个横向滚动的控件, 在 ViewGr ... -
Android中一些你可能没注意的小效果实现
2017-02-15 21:09 0http://www.see-source.com/blog/ ... -
Android热修复:Andfix和Hotfix,两种方案的比较与实现
2017-02-15 21:00 0http://www.see-source.com/blog/ ... -
Android 从网页中跳转到本地App
2017-01-11 09:27 1883我们在使用微信、QQ、京东等app的时候,会发现有时候通过他们 ... -
Activity的启动模式和onNewIntent
2016-12-28 09:10 1336一、启动模式介绍 启 ... -
android5.0使用Notification报RemoteServiceException的解决办法
2016-08-31 16:13 11553有时android5.0下使用Notification会报如下 ... -
RecyclerView 中的 item 如何居中问题
2016-05-18 09:52 12557一个很简单的Item布局,我只要让它由上而下排列,文字居中 ... -
sqlite3:not found 解决方法
2015-12-08 16:03 2558最最最重要,先root你的手机吧 sqlite3 为一个可 ... -
隐藏底部虚拟键NavigationBar实现全屏
2015-10-08 17:20 9856import android.app.Activity; ... -
服务端执行慢或网络延迟时,Volley多次发送请求的问题
2015-07-27 15:40 7004原文: Android Volley double post ... -
如何获取 Android 设备的CPU核数、时钟频率以及内存大小
2015-06-30 17:04 4388原帖: http://www.jianshu.com/p/f7 ... -
android点滴5
2015-04-10 17:32 2052一些小效果的实现 http://www.see-source. ...
相关推荐
"基于Android的记录点滴生活App设计与实现" 本文主要介绍了基于Android的记录点滴生活App的设计与实现,旨在帮助用户提高时间利用效率、满足用户日常社交、记录用户生活轨迹。该App的设计主要涉及到应用背景、实现...
在移动设备上,记事本应用是一种常见的工具,方便用户随时随地记录生活点滴或工作备忘。本文将深入探讨一个基于Android Studio开发的安卓记事本App,它包含了登录、注册、记事本列表、添加记事、修改记事等功能,...
1. 数据存储:便签内容需要持久化存储,这通常通过SQLite数据库或者Android的SharedPreferences实现。SQLite用于存储大量结构化的数据,而SharedPreferences则适合存储简单的键值对。 2. 用户界面:UI设计遵循...
在这个大作业中,我们看到的是一个基于Android Studio开发的简单记事本应用,它允许用户记录日常生活中的点滴,并进行保存。下面我们将深入探讨这个应用涉及到的关键知识点。 1. **Android应用基础**: - **...
总的来说,"点滴音乐播放器"是一款集本地音乐播放、播放模式选择和歌词同步显示于一体的Android应用,其背后的技术实现涵盖了多媒体处理、文件操作、用户界面设计等多个方面,充分体现了Android开发的多样性和复杂性...
【Android应用源码时光日志本】是一款专为Android平台设计的应用程序,旨在帮助用户用一句话轻松记录生活中的点滴时光。这款应用的核心功能是让用户每天用简洁的语言记录下自己的所思所感,形成一个时间线式的个人...
在Android平台上,开发一个记事本应用是一项常见的实践任务,它可以帮助用户记录日常生活中的点滴信息。这个"Android记事本的实现"项目是基于Android SDK的,利用了平台内置的SQLite数据库来存储用户的数据。接下来...
1. **旅游电话**:此模块提供了紧急联系信息和常用旅游服务热线,如航空公司、酒店、旅行社等,方便用户在遇到问题时能迅速寻求帮助。 2. **旅游笔记**:用户可以在此记录旅行中的点滴,无论是行程规划、景点介绍...
这款简单的笔记本App可能是为了方便用户记录日常生活、工作或学习中的点滴信息。 描述中提到“用android写的一个简单的笔记本app”,这意味着这个App可能具有基本的记事功能,如文本编辑、保存、查看等。开发者可能...
【标题】:“Android随手记”是一款专为Android平台设计的笔记应用,旨在提供便捷的记录功能,让用户随时随地捕捉生活中的点滴。源代码的开放性使得它成为初学者学习Android开发的良好资源。 【描述】:该项目提供...
其Android客户端为用户提供了一个便捷的途径,通过手机随时随地分享生活点滴,关注他人动态。今天,我们将深入探讨“饭否Android客户端”的源码,以此来揭示其背后的开发原理和技术栈。 首先,源码是软件开发的核心...
在Android平台上,开发一款便签应用是常见的任务,它能够帮助用户快速记录日常生活中的点滴信息。本源代码分享的是一个Android便签应用的实现,旨在为开发者提供学习和参考的资源。下面我们将深入探讨Android便签...
1. **环境搭建**:首先,你需要安装Android Studio,这是官方推荐的Android开发集成环境。配置好Java Development Kit (JDK) 和Android SDK,并设置好模拟器或连接真实设备进行调试。 2. **布局设计**:使用XML来...
在开发“Android App_云随笔课程设计”项目时,我们面临的是构建一个移动应用程序,旨在帮助用户便捷地记录他们的日常生活、旅行体验、心情点滴以及学习笔记等。这个应用程序的关键特性在于其同步功能,它将用户的...
1、任务日历模块,可以对过去所有任务进行汇总,编辑修改所有任务,完成任务领取奖励。 2、每日任务新视觉,可以对每日任务进行删除,执行每日任务操作便捷。 3、专家推荐模块,了解最新幼教知识,统计阅读时长,...
1. **Android Studio集成开发环境**:开发Android应用的基础工具是Android Studio,它提供了代码编辑、调试、性能分析等功能,使得开发者可以高效地构建应用程序。 2. **布局设计**:应用的界面由XML文件定义,使用...
《Android日记本(上线版)》是一款专为Android平台设计的日记应用,旨在提供便捷、个性化的记录方式,让用户能够随时随地记录生活中的点滴。这款应用的第二版已经正式上线,并在指定网址...
在Android平台上,开发一款日记本应用是一个常见的实践项目,它能帮助用户记录日常生活中的点滴,同时为初学者提供了一个理解Android应用开发的良好起点。这款"android 日记本"源代码正是这样一个实例,它包含了基本...
在Android平台上,开发一款便签应用是一个常见的项目,它能够帮助用户快速记录日常生活中的点滴信息。这个名为"Android便签作品"的项目包含了基础的便签功能和安全性的设置,如密码保护,使得用户的数据更加私密。接...
"Android私密记事本"是一个典型的Android应用程序,它利用了Android平台的核心组件——四大组件,为用户提供了一个安全、便捷的记录生活点滴的工具。本文将深入探讨这一应用程序背后的技术原理,主要围绕四大组件...