android编程小技巧集锦

1.android中 一个XML文件中引入另一XML的方法如下:

                <include
                    android:id="@+id/inlcude"
                    layout="@layout/listview_item" />

这样做的好处可以重复利用相同的XML文件

2.android 中去除EditText的黄色边框的方法是:

  属性中添加:    
 android:background="@null"

3.android中除去ListView滑动时候黑色背景的方法是:

属性中添加:     

     android:cacheColorHint="#00000000"

4.android中设置没有TitleBar和全屏的方法分别是:

1.  没有TitleBa    

在AndroidManifest.xml  中Activity的theme 设置如下:

 <activity
            android:name=".Issue"
            android:theme="@android:style/Theme.NoTitleBar" /

2.全屏

在AndroidManifest.xml  中Activity的theme 设置如下:

<activity
            android:name=".Issue"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />

5.去除ScrollView 向上或者向下滑动时候顶部的黄边阴影


在网上搜了一些方法尝试了好多次,把我设置好的拿过来和大家分享一下

具体如下,在ScrollView中去掉滚动条的方法是

 android:scrollbars="none"
在java中代码实现的去除黄边的方法如下  最主要的是  scrollView.setOverScrollMode(View.OVER_SCROLL_NEVER);

	        /**
		 * 去除ScrollView 顶部黄边的方法,因为在android 2.2 版本以前没有滑动到顶部或者底部黄边的阴影,
		 *  在2.3版本之后出现了黄色阴影, 解决办法如下,
		 * 
		 * **/
		ScrollView scrollView;
		 Integer version;
		scrollView = (ScrollView) findViewById(R.id.setting_scrollview);
		if ((version = Integer.valueOf(android.os.Build.VERSION.SDK)) > 8) {
			Toast.makeText(Setting.this, "除去黄边", 1).show();
			scrollView.setOverScrollMode(View.OVER_SCROLL_NEVER);
		}

6.android中布局的一下技巧

一般控制 控件的位置、间距都需要加layout,控件中字体中的位置、间距则没

1、控件垂直居中、水平居中、居中的方法:

android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:layout_centerInParent="true"


2、控件距上、下、左、右、四周的距离
android:layout_marginTop="20dp"
android:layout_marginBottom="20dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_margin="20dp"


3、字体在控件中垂直居中、水平居中、居中的方法:
android:gravity="center_vertical"
android:gravity="center_horizontal"
android:gravity="center"


4、字体在控件中距离控件边上、下、左、右四周距离的方法
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:padding="10dp"


7.用代码实现改变组件中drawableTop、drawableBottom、drawableLeft   、 drawableRight的方法

        checkread=(TextView)findViewById(R.id.check_read);
        checkread.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub

		        Drawable drawable= getResources().getDrawable(R.drawable.login_enter);  
		      /// 这一步必须要做,否则不会显示.  
		      drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight());  
		      checkread.setCompoundDrawables(drawable,null,null,null);  
		        
			}
		});

8.控制软键盘不覆盖Button或则下面EditText的方法

在androidmanfest.xml 文件 activity 节点中添加   android:windowSoftInputMode="stateHidden|adjustResize" 控制键盘的隐藏和适应屏幕空间的大小。

           <activity
            android:name=".TestActivity"
            android:label="@string/app_name"
            android:windowSoftInputMode="stateHidden|adjustResize"
             >


 9.AlertDialog 中setItems的处理

实现的效果如下:

实现的代码如下:

                           final CharSequence[] items = { "选择相册图片", "现在拍摄" };
			AlertDialog.Builder builder = new AlertDialog.Builder(this);
			builder.setTitle("添加照片")
			.setItems(items, new DialogInterface.OnClickListener() {
				public void onClick(DialogInterface dialog, int item) {
					
					//根据设置items中数组中item的值进行监听设置
	                if (item == 1){  
	                    Intent getImageByCamera = new Intent("android.media.action.IMAGE_CAPTURE");  
	                    startActivityForResult(getImageByCamera, 1);  
	                } else{  
	                    Intent getImage = new Intent(Intent.ACTION_GET_CONTENT);  
	                    getImage.addCategory(Intent.CATEGORY_OPENABLE);  
	                    getImage.setType("image/jpeg");  
	                    startActivityForResult(getImage, 0);  
	                }  	
					
				}
			}).create().show();

 

10.验证邮箱格式

	          //电子邮件  
		 String check = "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";  
		 Pattern regex = Pattern.compile(check);  
		 Matcher matcher = regex.matcher(1111111@qq.com);  
		 boolean isMatched = matcher.matches(); 


 11.android 中解决中文乱码问题

这个办法比较笨,但是比较实用,一眼就可以看出需要的是那种编码

                     String temp = new String(datastr.getBytes(), "GBK");
                     System.out.println("****1** getBytes() -> GBK ******\n"+temp);
                     temp = new String(datastr.getBytes("GBK"), "UTF-8");
                     System.out.println("****2** GBK -> UTF-8 *******\n"+temp);
                     temp = new String(datastr.getBytes("GBK"), "ISO-8859-1");
                     System.out.println("****3** GBK -> ISO-8859-1 *******\n"+temp);
                     temp = new String(datastr.getBytes("ISO-8859-1"), "UTF-8");
                     System.out.println("****4** ISO-8859-1 -> UTF-8 *******\n"+temp);
                     temp = new String(datastr.getBytes("ISO-8859-1"), "GBK");
                     System.out.println("***5*** ISO-8859-1 -> GBK *******\n"+temp);
                     temp = new String(datastr.getBytes("UTF-8"), "GBK");
                     System.out.println("**6**** UTF-8 -> GBK *******\n"+temp);
                     temp = new String(datastr.getBytes("UTF-8"), "ISO-8859-1");
                     System.out.println("***7*** UTF-8 -> ISO-8859-1 *******\n"+temp);

经过测试可以在这7中方法中筛选出符合自己要求的编码格式后台输出如下:


 



1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Android

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值