笔记46--知识点更新-------长期更新

1、EditText不弹出输入法焦点

第一种方式:getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

第二种方式:AndroidMainfest.xml中在指定的activity增加属性:android:windowSoftInputMode="stateHidden|adjustResize"

2、clickable、enable、focusable区别:

先看两个效果图:

图1:笔记46--知识点更新-------长期更新_第1张图片

图2:笔记46--知识点更新-------长期更新_第2张图片

图1是:btn.setEnabled(false);

图2是:btn.setClickable(false);如果设置了按钮的点击事件,则程序运行到监听器的时候会把setClickable()的值设为true。所以要想使得这个设置有用,必须在按钮的监听事件之后执行。

focusable和focusableInTouchMode对button无效。但是对EditText管用。任意一个设为false,软键盘怎么都不会弹出来了;任意一个设为true(另一个不设或不为false),软键盘不会自动弹出,点击才弹出。

3、两个java文件调用同一个xml

两个java文件调用同一个xml时,在第一个java文件中对xml文件的设置(比如隐藏某些控件)将会体现到第二个java文件显示的界面上。

4、EditText的监听事件(动态获取字符)

eidtText.addTextChangedListener(new TextWatcher() {

	@Override
	public void onTextChanged(CharSequence s, int start, int before, int count) {
	<span style="white-space:pre">	</span>// TODO Auto-generated method stub
		listExtension.put(groupPosition, s.toString());
		System.out.println("---店铺留言---"+listExtension.get(groupPosition));
		//	notifyDataSetChanged();
		}

		@Override
		public void beforeTextChanged(CharSequence s, int start, int count, int after) {
			// TODO Auto-generated method stub

		}

		@Override
		public void afterTextChanged(Editable s) {
			// TODO Auto-generated method stub
		}
});

5、android字符串转为ASCII码

public class StringToAscii {


	public static String toHexUtil(int n){
		String rt="";
		switch(n){
		case 10:rt+="A";break;
		case 11:rt+="B";break;
		case 12:rt+="C";break;
		case 13:rt+="D";break;
		case 14:rt+="E";break;
		case 15:rt+="F";break;
		default:
			rt+=n;
		}
		return rt;
	}

	public static String toHex(int n){
		StringBuilder sb=new StringBuilder();
		if(n/16==0){
			return toHexUtil(n);
		}else{
			String t=toHex(n/16);
			int nn=n%16;
			sb.append(t).append(toHexUtil(nn));
		}
		return sb.toString();
	}

	public static String parseAscii(String str){
		StringBuilder sb=new StringBuilder();
		byte[] bs=str.getBytes();
		for(int i=0;i<bs.length;i++)
			sb.append(toHex(bs[i]));
		return sb.toString();
	}
}
然后直接调用此句即可返回转为ASCII码之后的值(String):

StringToAscii.parseAscii("A");

6、ASCII码对照表
7、动态更改控件大小

以viewPager为例:

//动态获取屏幕
int height = ScreenInfo.getScreenHeight(Product_details_page.this)/2;
android.view.ViewGroup.LayoutParams param=viewPager.getLayoutParams();
param.height=height;
viewPager.setLayoutParams(param);
8、EditText只能输入数字

数字:android:inputType="number"

带小数的数字:android:inputType="numberDecimal"

电话号码:android:inputType="phone"




你可能感兴趣的:(笔记46--知识点更新-------长期更新)