android编程中的琐碎知识点汇总(5)

1.启动程序无需动画

Java代码   收藏代码
  1. myIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);//1.5的应该使用,这样就可以没有动画效果了  
  2. getWindow().setWindowAnimations(1)//1.6的应该使用,这不要忘记放在activity  

 

2.SD卡创建目录

Java代码   收藏代码
  1. File wallpaperDirectory = new File("/sdcard/Wallpaper/");  
  2. wallpaperDirectory.mkdirs();  
  3. File outputFile = new File(wallpaperDirectory, filename);  
  4. FileOutputStream fos = new FileOutputStream(outputFile);   

 注意要添加权限哦

Xml代码   收藏代码
  1. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  

 

3.文字中间加横线效果

Java代码   收藏代码
  1. priceTV.setText("价格:2.00元");     
  2. priceTV.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);    

 

4.android中使用事务操作SQLite数据库

Java代码   收藏代码
  1. SQLiteDatabase db = ....;   
  2. db.beginTransaction();//开始事务   
  3. try {   
  4.     db.execSQL("insert into person(name, age) values(?,?)"new Object[]{"张三",   
  5.   
  6. 4});  
  7.     db.execSQL("update person set name=? where personid=?"new Object[]{"李四"1});  
  8.     db.setTransactionSuccessful();//调用此方法会在执行到endTransaction()时提交当前事  
  9.   
  10. 务,如果不调用此方法会回滚事务   
  11. finally {   
  12.     db.endTransaction();//由事务的标志决定是提交事务,还是回滚事务   
  13. }  
  14. db.close();  

 

5. 关于短信类SmsMessage的疑问

Java代码   收藏代码
  1. public void onReceive(Context context, Intent intent) {  
  2.   // TODO Auto-generated method stub  
  3.   Log.d(TAG, "--->onReceive  ,SMS reach");  
  4.     
  5.   Bundle bundle = intent.getExtras();  
  6.         if (bundle != null) {  
  7.             Object[] pdus = (Object[]) bundle.get("pdus");  
  8.             SmsMessage[] messages = new SmsMessage[pdus.length];  
  9.             for (int i = 0; i < pdus.length; i++) {  
  10.                 messages = SmsMessage.createFromPdu((byte[]) pdus);  
  11.             }  
  12.            for (SmsMessage smsMessage : messages) {  
  13.                 from = smsMessage.getDisplayOriginatingAddress();  
  14.                 data = smsMessage.getDisplayMessageBody().trim();  
  15.                 Log.d(TAG, from + " " + data);  
  16.                  //处理内容  
  17.                  response(context, data);  
  18.                  }  
  19.         }  
  20. }  

 

6.android中的WebView支持多点触控:

Java代码   收藏代码
  1. public class UsingMyWebview extends Activity {  
  2.     private WebView mWebView;  
  3.     @Override  
  4.     public void onCreate(Bundle savedInstanceState) {  
  5.         super.onCreate(savedInstanceState);  
  6.         setContentView(R.layout.main);  
  7.           
  8.         // Get Web view  
  9.         mWebView = (WebView) findViewById(R.id.MyWebview);// This is the id you gave to the WebView in the main.xml  
  10.         mWebView.getSettings().setJavaScriptEnabled(true);  
  11.         mWebView.getSettings().setSupportZoom(true);  
  12.         // Zoom Control on web (You don't need this if ROM supports Multi-Touch  
  13.         mWebView.getSettings().setBuiltInZoomControls(true);// Enable Multitouch if supported by ROM   
  14.         //Load URL  
  15.         mWebView.loadUrl("http://www.firstdroid.com/advertisement.htm");  
  16.     }  
  17. }  

 7.android程序开机自动启动实现:

Xml代码   收藏代码
  1. <receiver android:name=".BootBroadcastReceiver">  
  2.     <intent-filter>  
  3.         <action android:name="android.intent.action.BOOT_COMPLETED" />  
  4.     </intent-filter>  
  5. </receiver>  

 在manifest文件的application标签中添加receiver标签,并且android:name指定一个BroadcastReceiver,通过过滤器实现过滤开机的完成那个广播。

Java代码   收藏代码
  1. package com.jftt.bootstart;  
  2.   
  3. import android.content.BroadcastReceiver;  
  4. import android.content.Context;  
  5. import android.content.Intent;  
  6.   
  7. public class BootBroadcastReceiver extends BroadcastReceiver {  
  8.     static final String ACTION = "android.intent.action.BOOT_COMPLETED";  
  9.   
  10.     @Override  
  11.     public void onReceive(Context context, Intent intent) {  
  12.         if (intent.getAction().equals(ACTION)) {  
  13.             Intent sayHelloIntent = new Intent(context, BootStart.class);//指定要开启的activity页面  
  14.             sayHelloIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
  15.   
  16.             context.startActivity(sayHelloIntent);  
  17.         }  
  18.     }  

你可能感兴趣的:(android)