android 日常迭代与维护总结一

现在全面负责公司android 产品的开发与维护,压力还真不小。因为产品多,android开发技术人员少。很多需要我亲力亲为。这里记录一下日常遇到的小知识。

1、actionbarsherlock框架,标题栏返回处理

//去掉app图标显示
getSupportActionBar().setDisplayShowHomeEnabled(false);

actionbarsherlock框架标题栏显示返回图标
// 添加返回按钮
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

2、android ArrayList排序

	public class MyComparator implements Comparator<Student> {  

	    public int compare(Student s1, Student s2) {
	        if(s1.getID() > s2.getID()){
	            return 1;
	        } else if(s1.getID() < s2.getID()) {
	            return -1;
	        }
	        return 0;
	    }
	}

student的实体类就不贴了,能看懂的。看看怎么使用吧。

            Student s1 = new Student("001", "Jim", "男", 50);
            Student s2 = new Student("002", "Tom", "男", 70);
            Student s3 = new Student("003", "Dave", "男", 65);
            Student s4 = new Student("004", "Peter", "男", 80);
            Student s5 = new Student("005", "Lucy", "女", 100);
            //创建集合
            ArrayList<Student> list = new ArrayList<Student>();
            list.add(s1);
            list.add(s2);
            list.add(s3);
            list.add(s4);
            list.add(s5);
            Comparator comparator = new MyComparator();//重要部分
            Collections.sort(list, comparator); 

3、android 调用系统默认的浏览器打开本地html文件

			                Intent intent= new Intent();
			                intent.setAction("android.intent.action.VIEW");
			                Uri content_url = Uri.parse("file://" + strFilePathName);
			                intent.setData(content_url);
			                intent.setClassName("com.android.browser","com.android.browser.BrowserActivity");
			                mContext.startActivity(intent);

AndroidManifest.xml文件把加到相应activity的<intent-filter>后面就可以了

            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                data android:scheme="file" />
            </intent-filter>

4、String.split("\\+")的字符串分隔特殊情况

srcData[1].split("\\+")的字符串分隔的用法,遇到分隔是?(问号),+(加号),*(乘),|(竖线),.(点)等都是转义字符,必须的加上"\\"。

5、字符串提取数字

	public static int getStringExtractInt(String string){
		String regEx="[^0-9]";
		Pattern p = Pattern.compile(regEx);
		Matcher m = p.matcher(string);
		String strResult = m.replaceAll("").trim();
		if (strResult.isEmpty() || strResult == "") {
			strResult = "0";
		}
		return Integer.parseInt(strResult);
	}

6、分割字符串提取数据

	public static int getStringSpiltToInt(String strSpilt , String string) {
		String[] result = string.split(strSpilt);
		if (result[0].isEmpty()|| result[0] == null ) {
			result[0] = "0";
		}
		return Integer.parseInt(result[0]);
	}

7、分割字符串提取数据,返回整型数组

	/**
	 * 分割字符串提取数据,返回整型数组
	 * @param strSpilt
	 * @param string
	 * @return int[]
	 */
	public static int[] getStringSpiltToIntArray(String strSpilt , String string) {
		String[] result = string.split(strSpilt);
	    int[] nResult = new int[result.length];
		for (int i = 0; i < result.length; i++) {
			if (result[i].isEmpty()|| result[i] == null ) {
				result[i] = "0";
			}
		}

		for (int i = 0; i < nResult.length; i++) {
			Integer.parseInt(result[i]);
		}
		return nResult;
	}

8、textview加下划线

textView.getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG ); //下划线

textView.getPaint().setAntiAlias(true);//抗锯齿

textview.getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG); //中划线

setFlags(Paint. STRIKE_THRU_TEXT_FLAG|Paint.ANTI_ALIAS_FLAG);  // 设置中划线并加清晰 

textView.getPaint().setFlags(0);  // 取消设置的的划线

9、cursor遍历数据表的值

根据列索引遍历读取列数据:
while(cursor.moveToNext())
{
//根据列的索引直接读取  比如第0列的值
   String strValue= cursor.getString(0);
}
根据列名获取列索引遍历读取列数据:
while(cursor.moveToNext())
{
//根据列名获取列索引
int nameColumnIndex = cursor.getColumnIndex(“username");
String strValue=cursor.getString(nameColumnIndex);
}
时间: 2024-11-08 16:19:50

android 日常迭代与维护总结一的相关文章

android 日常迭代与维护总结二

android 迭代开发中陆续遇到各种问题,我们要善于总结,归类.现在记录一下这几个月遇到的问题汇总. 1.android fragment中onActivityResult方法返回没有数据 返回数据,可能Intent data有数据或者是int requestCode这个参数返回码有错误. 解决办法: 在activity中需要加上super.onActivityResult(requestCode, resultCode, data); @Override protected void onA

Android:日常学习笔记(8)———探究UI开发(5)

Android:日常学习笔记(8)---探究UI开发(5) ListView控件的使用 ListView的简单用法 public class MainActivity extends AppCompatActivity { private String[] data={"Apple","Banana","Orange","Watermelon","Pear","Grape","

Android:日常学习笔记(10)———使用LitePal操作数据库

Android:日常学习笔记(10)---使用LitePal操作数据库 引入LitePal 什么是LitePal LitePal是一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式,将平时开发时最常用的一些数据库功能进行了封装,使得开发者不用编写一行SQL语句就可以完成各种建表.増删改查的操作.并且LitePal很"轻",jar包大小不到100k,而且近乎零配置,这一点和Hibernate这类的框架有很大区别.目前LitePal的源码已经托管到了GitHub上. 关

Android:日常学习笔记(6)——探究活动(3)

Android:日常学习笔记(6)--探究活动(3) 活动的生命周期 返回栈 Android中的活动是可以叠加的,我们每启动一个新活动,就会覆盖在原来的活动上,点击Back以后销毁最上面的活动,下面的活动就会重新显现出来.Android是使用任务(Task)来管理活动的,一个任务就是一组存放在栈里的活动的集合. 默认情况下,每当我们启动一个新的活动,他会在返回栈中入栈,并处于栈顶位置.而每当我们按下Back或者Finish以后,处于栈顶位置的活动会出栈. 活动的状态 运行状态(栈顶的元素).暂停

Android:日常学习笔记(8)———探究UI开发(2)

Android:日常学习笔记(8)---探究UI开发(2) 对话框 说明: 对话框是提示用户作出决定或输入额外信息的小窗口. 对话框不会填充屏幕,通常用于需要用户采取行动才能继续执行的模式事件. 提示: Dialog 类是对话框的基类,但您应该避免直接实例化 Dialog,而是使用下列子类之一: AlertDialog此对话框可显示标题.最多三个按钮.可选择项列表或自定义布局. DatePickerDialog 或 TimePickerDialog此对话框带有允许用户选择日期或时间的预定义 UI

Android:日常学习笔记(7)———探究UI开发(1)

Android:日常学习笔记(7)---探究UI开发(1) 常用控件的使用方法 TextView 说明:TextView是安卓中最为简单的一个控件,常用来在界面上显示一段文本信息. 代码: <TextView android:id="@+id/text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:text=&qu

Android:日常学习笔记(9)———探究持久化技术

Android:日常学习笔记(9)---探究持久化技术 引入持久化技术 什么是持久化技术 持久化技术就是指将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或电脑关机的情况下,这些数据仍然不会丢失. Android系统提供的三种持久化技术: 文件存储.SharedPreference(使用共享首选项)存储以及数据库存储. 文件存储 说明: 您可以直接在设备的内部存储中保存文件.默认情况下,保存到内部存储的文件是应用的私有文件,其他应用(和用户)不能访问这些文件. 当用户卸载您的应用时,这些文

Android:日常学习笔记(9)———探究广播机制

Android:日常学习笔记(9)---探究广播机制 引入广播机制 Andorid广播机制 广播是任何应用均可接收的消息.系统将针对系统事件(例如:系统启动或设备开始充电时)传递各种广播.通过将 Intent 传递给 sendBroadcast().sendOrderedBroadcast() 或 sendStickyBroadcast(),您可以将广播传递给其他应用. Android提供了一套完整的API,允许应用程序自由地发送和接受广播.发送广播使用Intent,接受广播使用 广播接收器(B

Android:日常学习笔记(7)———探究UI开发(4)

Android:日常学习笔记(7)---探究UI开发(4) UI概述  View 和 ViewGrou Android 应用中的所有用户界面元素都是使用 View 和 ViewGroup 对象构建而成.View 对象用于在屏幕上绘制可供用户交互的内容.ViewGroup 对象用于储存其他 View(和 ViewGroup)对象,以便定义界面的布局. 说明: View是安卓中最基本的一种UI,它可以在屏幕上绘制一块矩形区域,并能响应这块区域的各种事件,我们使用的各种控件都是在View的基础上进行的