书籍提取

android

2013-11-18 13:19

利用常数设置控件文本颜色

android:textColor="@drawable/darkgray"       布局里使用资源文件值

可以使用 color.xml 里的值

<drawable name="darkgray">#808080FF</drawable>


设置控件背景色

 Drawable HippoDrawable = getResources().getDrawable(R.drawable.white);//获取资源文件值

 mTextView01.setBackgroundDrawable(HippoDrawable);



Color.RED   系统颜色值。


获取手机分辨率

 DisplayMetrics dm = new DisplayMetrics();

    getWindowManager().getDefaultDisplay().getMetrics(dm); 

    String strOpt = "手机屏幕分辨率为:" + dm.widthPixels + " × " + dm.heightPixels; 


样式的应用

style="@style/DavidStyleText1"    布局文件

style.xml

 <style name="DavidStyleText2">

    <item name="android:textSize">14sp</item>

    <item name="android:textColor">#FF7F7C</item>

    <item name="android:fromAlpha">0.0</item>

    <item name="android:toAlpha">0.0</item>

  </style>


程序里也是可以使用setContentView(R.layout.mylayout);的

关闭当前Activity    this.finish();



intent 意图传递复杂数据


        Bundle bundle = new Bundle();

        bundle.putDouble("height",height);

        bundle.putString("sex",sex); 

        /*将Bundle对象assign给Intent*/ 

        intent.putExtras(bundle); 



取得Bundle对象中的数据

Bundle bunde = this.getIntent().getExtras();

String sex = bunde.getString("sex");


转换浮点数
 double height=Double.parseDouble(et.getText().toString()); 

设置字体   assets/fonts/HandmadeTypewriter.ttf

mText.setTypeface (Typeface.createFromAsset(getAssets(),"fonts/HandmadeTypewriter.ttf"));

转数值型

Integer.parseInt


设置主题

程序里 setTheme(R.style.Theme_Translucent);

style.xml

 <style name="Theme.Translucent">

    <item name="android:windowBackground">@drawable/translucent_background</item>

    <item name="android:windowNoTitle">false</item>

    <item name="android:colorForeground">@drawable/blue</item>

    <item name="android:colorBackground">@drawable/white</item>

  </style>


 设定EditText的内容为可见的 (打勾密码可见)

 et.setTransformationMethod(HideReturnsTransformationMethod.getInstance());

 et.setTransformationMethod(PasswordTransformationMethod.getInstance());


获取程序sdk版本

getApplicationInfo().targetSdkVersion

AndroidManifest.xml 设置的值  <uses-sdk android:minSdkVersion="10"></uses-sdk>

当前系统sdk版本

Build.VERSION_CODES.GINGERBREAD

跨程序调用

 Intent intent = new Intent(); //  传入package名称及package名称加class名称

 intent.setClassName("package.a", "package.ex03_25_B.EX03_25_B");

 startActivity(intent);


使用意图直接调用系统模块    比如打开设置窗口

Intent myintent= new Intent("android.intent.action.MANAGE_PACKAGE_STORAGE");

startActivity(myintent);

关闭当前线程  

android.os.Process.killProcess(android.os.Process.myPid());


EditText 监听输入事件setOnKeyListener 实现onKey方法   (不理想效果 模拟器上)

setOnFocusChangeListener  获得焦点事件。


  myCheckBox.setChecked(false); //设置未选中状态

  myButton.setEnabled(false);   //设置不可以使用状态


mRadioGroup OnCheckedChangeListener事件 checkedId参数就是被选中的id值   if(checkedId==mRadio1.getId()) 


程序动态设置textview 识别   相当于android:autoLink="all" 里的属性

Linkify.addLinks(mTextView01,Linkify.WEB_URLS|Linkify. EMAIL_ADDRESSES|Linkify.PHONE_NUMBERS);


拨打电话

Intent myIntentDial = new Intent("android.intent.action.CALL",Uri.parse("tel:"+strInput)); 

startActivity(myIntentDial);

发送短信

SmsManager smsManager = SmsManager.getDefault(); 

PendingIntent mPI = PendingIntent.getBroadcast(this, 0, new Intent(), 0); //可以理解为延迟执行的intent

smsManager.sendTextMessage(tel, null, Message, mPI, null);