`
wen742538485
  • 浏览: 229305 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Android很有用的代码片段

阅读更多
1:查看是否有存储卡插入 
String status=Environment.getExternalStorageState(); 
if(status.equals(Enviroment.MEDIA_MOUNTED)){ 
   说明有SD卡插入 


2:让某个Activity透明  

OnCreate 中不设Layout 
this.setTheme(R.style.Theme_Transparent); 
以下是 Theme_Transparent的定义(注意transparent_bg是一副透明的图片) 

3:在屏幕元素中设置句柄 
使用Activity.findViewById来取得屏幕上的元素的句柄. 使用该句柄您可以设置或获取任何该对象外露的值. 
TextView msgTextView = (TextView)findViewById(R.id.msg); 
   msgTextView.setText(R.string.push_me); 

4:发送短信 

            String body=”this is mms demo”; 

           Intent mmsintent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”smsto”, number, null)); 
           mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body); 
           mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, true); 
           mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, true); 
            startActivity(mmsintent); 

   5:发送彩信 

           StringBuilder sb = new StringBuilder(); 

            sb.append(”file://”); 

            sb.append(fd.getAbsoluteFile()); 

            Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”mmsto”, number, null)); 
            // Below extra datas are all optional. 
            intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_SUBJECT, subject); 
            intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body); 
            intent.putExtra(Messaging.KEY_ACTION_SENDTO_CONTENT_URI, sb.toString()); 
            intent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, composeMode); 
            intent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, exitOnSent); 

            startActivity(intent); 

7:发送Mail 

             mime = “img/jpg”; 
            shareIntent.setDataAndType(Uri.fromFile(fd), mime); 
            shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(fd)); 
            shareIntent.putExtra(Intent.EXTRA_SUBJECT, subject); 

            shareIntent.putExtra(Intent.EXTRA_TEXT, body); 

8:注册一个 BroadcastReceiver 

registerReceiver(mMasterResetReciever, new IntentFilter(”oms.action.MASTERRESET”)); 

private BroadcastReceiver mMasterResetReciever = new BroadcastReceiver() { 

        public void onReceive(Context context, Intent intent){ 
            String action = intent.getAction(); 
            if(”oms.action.MASTERRESET”.equals(action)){ 
                RecoverDefaultConfig(); 
            } 
        } 

    }; 

9:定义ContentObserver,监听某个数据表 

private ContentObserver mDownloadsObserver = new DownloadsChangeObserver(Downloads.CONTENT_URI); 

private class DownloadsChangeObserver extends ContentObserver { 
        public DownloadsChangeObserver(Uri uri) { 
            super(new Handler()); 

        } 

        @Override
        public void onChange(boolean selfChange) {}   
        } 
    

10:获得 手机UA 

public String getUserAgent(){ 
    String user_agent = ProductProperties.get(ProductProperties.USER_AGENT_KEY, null); 
            return user_agent; 
    } 

11:清空手机上Cookie 

CookieSyncManager.createInstance(getApplicationContext()); 
        CookieManager.getInstance().removeAllCookie(); 

12:建立GPRS 连接 

   //Dial the GPRS link. 
    private boolean openDataConnection() { 
        // Set up data connection.  

        DataConnection conn = DataConnection.getInstance();      

            if (connectMode == 0) { 
                ret = conn.openConnection(mContext, “cmwap”, “cmwap”, “cmwap”); 
            } else { 
                ret = conn.openConnection(mContext, “cmnet”, “”, “”); 
            } 

    } 

13:PreferenceActivity 用法 

public class Setting extends PreferenceActivity{ 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        addPreferencesFromResource(R.xml.settings); 
    } 

} 

Setting.xml: 

            Android:key=”seting2″ 
            Android:title=”@string/seting2″ 
            Android:summary=”@string/seting2″/> 

            Android:key=”seting1″ 
            Android:title=”@string/seting1″ 
            Android:summaryOff=”@string/seting1summaryOff” 
            Android:summaryOn=”@stringseting1summaryOff”/> 

14:通过 HttpClient从指定server获取数据 

             DefaultHttpClient httpClient = new DefaultHttpClient(); 
            HttpGet method = new HttpGet(“http://www.baidu.com/1.html”); 
            HttpResponse resp; 
            Reader reader = null; 
            try { 
                // AllClientPNames.TIMEOUT 
                HttpParams params = new BasicHttpParams(); 
                params.setIntParameter(AllClientPNames.CONNECTION_TIMEOUT, 10000); 
                httpClient.setParams(params); 
                resp = httpClient.execute(method); 
                int status = resp.getStatusLine().getStatusCode(); 

                if (status != HttpStatus.SC_OK) return false; 

                // HttpStatus.SC_OK; 
                return true; 
            } catch (ClientProtocolException e) { 
                // TODO Auto-generated catch block 
                e.printStackTrace(); 
            } catch (IOException e) { 
                // TODO Auto-generated catch block 
                e.printStackTrace(); 
            } finally { 
                if (reader != null) try { 
                    reader.close(); 
                } catch (IOException e) { 
                    // TODO Auto-generated catch block 
                    e.printStackTrace(); 
                } 
            } 

15:显示toast 
Toast.makeText(this._getApplicationContext(), R.string._item, Toast.LENGTH_SHORT).show(); 

16:在当前Activity中启动另外一个Activity 
startActivity(new Intent(this,目标Activity.class)); 

17:从当前ContentView从查找控件 
(Button)findViewById(R.id.btnAbout)     
R.id.btnAbout指控件id。 

18:获取屏幕宽高 
DisplayMetrics dm = new DisplayMetrics();   
//获取窗口属性 
getWindowManager().getDefaultDisplay().getMetrics(dm);     
int screenWidth = dm.widthPixels;//320   
int screenHeight = dm.heightPixels;//480  

19:无标题栏、全屏 
//无标题栏   
requestWindowFeature(Window.FEATURE_NO_TITLE);   
//全屏模式   
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  
  WindowManager.LayoutParams.FLAG_FULLSCREEN);  
注意在setContentView()之前调用,否则无效。 

20注册activity 
所有用到的Activity都必须在AndroidManifest.xml中注册,否则会报空指针错误。 
如:,注意是包名+类名。 

本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2012-01/52646p2.htm
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics