1、androidMainfest.xml文件中在此Activity中写入 android:windowSoftInputMode="adjustPan" 可以让界面不被弹出的键盘挤上去
2、在androidmanifest.xml中的application标签中加入android:persistent="true" 属性后的确就能够达到保证该应用程序所在进程不会被LMK杀死。但前提是应用程序必须是系统应用
----------------------------------------------------------------------------
3、设置Activity的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法
android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次
不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次
4、加入android:screenOrientation=”landscape”属性即可(landscape是横向,portrait是纵向)。
---------------------------------------------------------------------------
5、输入法
// 隐藏输入法 InputMethodManager imm = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE); // 显示或者隐藏输入法 imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
/** 隐藏输入法 */
public static void hideInputMethodPanel(Window window) {
window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
}
/** 隐藏输入法 */
public static void hideInputMethod(Context context, View view) {
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
-------------------------------------------------------------
6、 Task(栈),Activity跳转时用到Intent Flag
Intent intent = new Intent(this,xxx.class);
1、如果activity在task存在,拿到最顶端,不会启动新的Activity
intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
2、如果activity在task存在,将Activity之上的所有Activity结束掉
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
3、默认的跳转类型,将Activity放到一个新的Task中
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
4、如果Activity已经运行到了Task,再次跳转不会在运行这个Activity
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
-------------------------------------------------------
7、AndroidManifest.xml中的<Activity>标签的android:launchMode属性设置;启动模式有4种,分别为:standard、singleTop、singleTask、singleInstance。
standard和singleTop属性的 Activity 的实例可以属于任何任务(Task),并且可以位于Activity堆栈的任何位置。
standard和singleTop的区别在于:
对于standard模式的Activity在被调用时会创建一个新的实例,所有实例处理同一个Intent对象;
对于singleTop模式的Activity,如果被调用的任务已经有一个这样的Activity 在堆栈的顶端,那么不会有新的实例创建, 任务会使用当前顶端的Activity实例来处理Intent对象。
singleTask 和 singleInstance模式的Activity 仅可用于启动任务,这种模式的Activity总是处在Activity堆栈的最底端,并且一个任务(task)中只能被实例化一次。
singleTask 和 singleInstance的区别在于:
对于 singleInstance模式的Activity, 任务的Activity堆栈中如果有这样的Activity,那它将是堆栈中的唯一的 Activity, 当前任务收到的 Intent 都由它处理,由它开启的其他 Activity 将在其他任务中被启动。
对于 SingleTask模式的Activity,它在堆栈底端,其上方可以有其他Activity被创建, 但是,如果发给该Activity的Intent对象到来时该Activity不在堆栈顶端,那么该Intent对象将被丢弃,但是界面还是会切换到当前的Activity。
----------------------------------------------------------------------------------
8、全屏
将Activity设置成半透明的效果
android:theme=
"@android:style/Theme.Translucent"
解决方法:
方法一:
在XML中设置android:cacheColorHint=
"#00000000"
方法二:
在代码中设置listView.setCacheColorHint(
0
);
11、编辑框中指定输入的类型,android:digits=
"num"
Field[] fields = R.drawable.
class
.getDeclaredFields();
for
(Field field:fields){
if
(!
"icon"
.equals(field.getName())){
sb.append(field.getName() +
"\t"
);
}
}
mTextView.setText(sb.toString());
android:stackFromBottom=
"true"
android:transcriptMode=
"alwaysScroll"
android:divider=”
@drawable
/list_driver”
android:scrollingCache=”
false
”
:android:cacheColorHint=“#
00000000
”
情况2:
Proguard returned with error code 1. See console
异常:
java.lang.ArrayIndexOutOfBoundsException
解决办法:将proguard.cfg中的"-dontpreverify"改成“-dontoptimize”
---------------------------------------------------------------------------------
http://www.open-open.com/lib/view/open1340837992436.html ---------httpPost、httpGet、HttpURLConnection、SD卡
http://www.360doc.com/content/12/0918/23/6522739_236839486.shtml
http://www.oschina.net/question/565065_85958
http://m.blog.csdn.net/blog/dreamer0924/8533121
http://m.blog.csdn.net/blog/dreamer0924/8533121
http://blog.csdn.net/Zengyangtech/article/details/5748674
http://www.eoeandroid.com/thread-191674-1-1.html ----------android备用工具