当前位置:  编程技术>移动开发
本页文章导读:
    ▪CheckBox例证        CheckBox例子 例子:CheckBox c = (CheckBox)findViewById(R.id.checkBox1); c.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { .........
    ▪ 禁止施用开机启动        禁止应用开机启动 使用 adb shell pm disable {bootcomplet_receiver_component_name}, 需要 root 权限   参考 http://pastebin.com/8rvNQMv2   enable/disable 自己应用里的某个组件,可以使用 /* Set the enabled setting for a p.........
    ▪ 图片影子       图片阴影  android中开发中,有时候为了某种效果需要给ImageView 或者LinearLayout画阴影。      为ImageView画阴影的主要的思想利用已知图片,然后构造一个阴影的bitmap。最后设置阴影的bitmap.........

[1]CheckBox例证
    来源: 互联网  发布时间: 2014-02-18
CheckBox例子
例子:
CheckBox c = (CheckBox)findViewById(R.id.checkBox1);
   c.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
		@Override
		public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
				//isChecked是表示是否选中
		}
});

    
[2] 禁止施用开机启动
    来源: 互联网  发布时间: 2014-02-18
禁止应用开机启动

使用 adb shell pm disable {bootcomplet_receiver_component_name}, 需要 root 权限

 

参考 http://pastebin.com/8rvNQMv2

 

enable/disable 自己应用里的某个组件,可以使用

/* Set the enabled setting for a package component 
   (activity, receiver, service, provider). */
abstract void setComponentEnabledSetting(ComponentName componentName, 
                                         int newState, 
                                         int flags)

比如:打开/关闭 开机启动,可以使用这个上面的方法 enable/disable 接收 android.intent.action.BOOT_COMPLETED 广播的 BroadcastReceiver。

 


    
[3] 图片影子
    来源: 互联网  发布时间: 2014-02-18
图片阴影

 android中开发中,有时候为了某种效果需要给ImageView 或者LinearLayout画阴影。

     为ImageView画阴影的主要的思想利用已知图片,然后构造一个阴影的bitmap。最后设置阴影的bitmap作为ImageView的背景。

    这里参考了一个帖子:http://stackoverflow.com/questions/3567312/android-drop-shadow-on-view

    利用这个思想。构造代码如下:

 

public void drawImageDropShadow(){
BlurMaskFilter blurFilter = new BlurMaskFilter(3, BlurMaskFilter.Blur.OUTER);
Paint shadowPaint = new Paint();
shadowPaint.setMaskFilter(blurFilter);
int[] offsetXY =new int[2];
Bitmap originalBitmap = BitmapFactory.decodeResource(this.getResources(),R.drawable.favoritelist);
Bitmap shadowBitmap = originalBitmap.extractAlpha(shadowPaint,offsetXY);
Bitmap shadowImage32 = shadowBitmap.copy(Bitmap.Config.ARGB_8888, true);
Canvas c = new Canvas(shadowImage32);
c.drawBitmap(originalBitmap, 0,0, null);
ImageView imageView1 = (ImageView)findViewById(R.id.shadowImageView);
imageView1.setImageBitmap(shadowImage32);
}
 
下面是设置LinearLayout的背景。用xml文件画Rectangle来作为LinearLayout的背景。思想和前面的一样。不同的是通过.xml创建一个Drawable,然后
制定 宽和高, 将Drawable转化bitmap 画阴影bitmap,然后将阴影bitmap转化为drawable,最后将drawable设置为LinearLayout的背景。
代码如下:
说明需要一个方法:将drawable转化为bitmap
一般通用的方法为:
public static Bitmap drawableToBitmap(Drawable drawable) {
Bitmap bitmap = Bitmap
.createBitmap(
drawable.getIntrinsicWidth(),
drawable.getIntrinsicHeight(),
drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888
: Bitmap.Config.RGB_565);
Canvas canvas = new Canvas(bitmap);
//canvas.setBitmap(bitmap);
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
drawable.draw(canvas);
return bitmap;
}
 

我创建的drawable是一个xml文件,而不是图片,所以,drawable.getIntrinsicHeight()得不到值。所以要手动传递参数设宽度和高度。代码如下:

 

 

private Bitmap drawableToBitmap(Drawable drawable,int width,int height) {

Bitmap bitmap = Bitmap.createBitmap(
width,
height,
drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888
: Bitmap.Config.RGB_565);
Canvas canvas = new Canvas(bitmap);
drawable.setBounds(0, 0, width, height);
drawable.draw(canvas);
return bitmap;
}
 

 


最后设置阴影的代码:
public void drawLayoutDropShadow(){
LinearLayout linearLayout = (LinearLayout)findViewById(R.id.testShadowLinearLayout);
BlurMaskFilter blurFilter = new BlurMaskFilter(3, BlurMaskFilter.Blur.OUTER);
Paint shadowPaint = new Paint();
shadowPaint.setMaskFilter(blurFilter);
Drawable drawable = this.getResources().getDrawable(R.drawable.backgroundservicescolor);
int[] offsetXY =new int[2];
Bitmap originalBitmap = drawableToBitmap(drawable,200,100);
Bitmap shadowBitmap = originalBitmap.extractAlpha(shadowPaint,offsetXY);
Bitmap shadowImage32 = shadowBitmap.copy(Bitmap.Config.ARGB_8888, true);
Canvas c = new Canvas(shadowImage32);
c.drawBitmap(originalBitmap, 0,0, null);
Drawable d =new BitmapDrawable(shadowImage32);
linearLayout.setBackgroundDrawable(d);
}

 
 

 

最后的效果如下:


 


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3