• 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.     }  

  • 相关阅读:
    RESTful API 设计指南【转】
    一款 .NET 下的轻量级 REST 和 HTTP API 客户端
    Windows 服务开发框架介绍
    实例演示 kino.razor (前端 Javascript 模板工具,Razor 风格)的使用
    深入研究 蒋金楠(Artech)老师的 MiniMvc(迷你 MVC),看看 MVC 内部到底是如何运行的
    扩展 IEnumerable<T>,让它根据另一个集合的顺序来排列
    谷歌正式发布Google APIs Client Library for .NET
    身为码农,为12306说两句公道话
    12306外包给阿里巴巴/IBM到底是否可行?
    自定义一个叫 ReadOnlyXmlMembershipProvider 的 MembershipProvider,用 XML 作为用户储藏室
  • 原文地址:https://www.cnblogs.com/myphoebe/p/2314835.html
Copyright © 2020-2023  润新知