Android开发:常用代码片段集合
"这是关于Android平台的一些常用代码片段的总结,包含51个实用技巧,适合开发者参考和学习,欢迎大家补充。" 在Android开发中,掌握一些基础和实用的代码片段可以大大提高开发效率。以下是其中一些关键知识点的详细解释: 1. 判断SD卡是否存在 ```java boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); ``` 这段代码通过检查`Environment.getExternalStorageState()`的返回值是否等于`MEDIA_MOUNTED`来判断SD卡是否可用。如果返回值相等,表示SD卡已挂载并可读写。 2. TextView设置部分文字颜色 ```java TextView tv = new TextView(this); // 添加CSS样式 tv.setText(Html.fromHtml("<font color=\"#ff0000\">红色</font>其它颜色")); // 另外一种方法设置3到14为绿色 SpannableString ss = new SpannableString("返回键(再按一次返回主页面)"); ss.setSpan(new ForegroundColorSpan(Color.GREEN), 3, 14, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); textView.setText(ss); ``` 这里展示了两种方法改变TextView中部分文字的颜色。第一种是通过`Html.fromHtml`解析HTML标签,第二种是使用`SpannableString`和`ForegroundColorSpan`自定义颜色范围。 3. 替换数据库字段中的字符 ```java update table set spell = replace(spell, 'ɡ', 'g'); ``` 在SQL语句中,`REPLACE()`函数用于将字符串中的某个字符替换为另一个字符。这里将数据库表中`spell`字段里的所有'ɡ'替换为'g'。 4. 单选按钮默认选中与下拉列表默认选中 ```java mRadioGroup.check(mRadioButton_1.getId()); for (int j = 0; j < cities.length; j++) { if (months[j].equals("武汉")) { mSpinner_m.setSelection(j); } } ``` `RadioGroup.check()`方法用于设置RadioGroup中的哪个单选按钮被选中,`mRadioButton_1.getId()`传入的是要选中按钮的ID。对于下拉列表`Spinner`,`setSelection()`方法用于设置默认选中的位置,这里是找到包含"武汉"的项并设置为其默认选中。 5. 在TextView中嵌套图片 ```java Drawable draw = getResources().getDrawable(R.drawable.ji_dot_nor); textView.setCompoundDrawablesWithIntrinsicBounds(null, draw, null, null); ``` `getDrawable()`方法从资源中获取Drawable对象,然后通过`setCompoundDrawablesWithIntrinsicBounds()`将其设置为TextView的左侧、顶部、右侧或底部装饰图。 6. 去除ListView的滚动条 ```java // 方法一:在XML属性中设置 android:scrollbars="none" // 方法二:在代码中设置 listView.setVerticalScrollBarEnabled(false); ``` ListView可以通过XML属性或编程方式关闭垂直滚动条,使其看起来更简洁。 7. 设置Activity的风格 ```xml <!-- 将Activity设置成半透明的效果 --> android:theme="@android:style/Theme.Translucent" <!-- 将Activity --> ``` 这行代码是在AndroidManifest.xml中设置Activity的主题,`Theme.Translucent`使得Activity具有半透明效果,使背景可见。 这些代码片段覆盖了Android开发中常见的任务,如存储管理、UI定制、数据操作以及界面交互等方面,对于Android开发者来说是非常有价值的参考资料。
![](https://csdnimg.cn/release/download_crawler_static/9242807/bg4.jpg)
剩余16页未读,继续阅读
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/edb28868ad8c49dab49617fef01732e2_sinat_31998357.jpg!1)
- 粉丝: 39
- 资源: 256
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 多模态联合稀疏表示在视频目标跟踪中的应用
- Kubernetes资源管控与Gardener开源软件实践解析
- MPI集群监控与负载平衡策略
- 自动化PHP安全漏洞检测:静态代码分析与数据流方法
- 青苔数据CEO程永:技术生态与阿里云开放创新
- 制造业转型: HyperX引领企业上云策略
- 赵维五分享:航空工业电子采购上云实战与运维策略
- 单片机控制的LED点阵显示屏设计及其实现
- 驻云科技李俊涛:AI驱动的云上服务新趋势与挑战
- 6LoWPAN物联网边界路由器:设计与实现
- 猩便利工程师仲小玉:Terraform云资源管理最佳实践与团队协作
- 类差分度改进的互信息特征选择提升文本分类性能
- VERITAS与阿里云合作的混合云转型与数据保护方案
- 云制造中的生产线仿真模型设计与虚拟化研究
- 汪洋在PostgresChina2018分享:高可用 PostgreSQL 工具与架构设计
- 2018 PostgresChina大会:阿里云时空引擎Ganos在PostgreSQL中的创新应用与多模型存储
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)