Android所有系统资源图标android.R.drawable.xxx查看(纯java)
16lz
2021-01-25
在编程的时候,我们经常要用到android的系统资源图标,一般都是引用其id如android.R.drawable.xxx。该资源名字能够很方便的服务我们引用,但是有一些图片名字接近,我们不知道该选哪个好。为此,本人设计了一个软件用于查看系统所带的所有资源文件。我们先通过API查看android.R.drawable文档,第一个是alert_dark_frame,其值为0x01080000,最后一个为zoom_plate,其值为0x01080097,这些值并非连续的,中间有些值是没有图标与之对应的,但这并不影响我们设计视图。我们通过GridView来展示所有资源,标题显示图片id和尺寸,运行效果图如下图所示。有了这个软件,我们在以后的编程中也可以随时引用系统提供图片文件,不但节省了人力去设计图标,而且还可以在很大程度上减少了软件包的大小。
软件下载地址:http://download.csdn.net/detail/mrlixirong/3609840
AndroidRDrawable.java代码
import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.view.*;import android.widget.*;import android.widget.AdapterView.*;public class AndroidRDrawable extends Activity {private AndroidRDrawable ard=this;private LinearLayout mainView=null;private TextView tv=null;private GridView gv=null;private int id=0x01080000; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mainView=new LinearLayout(this); mainView.setOrientation(LinearLayout.VERTICAL); tv=new TextView(this); tv.setText("这里显示图标名称和id及其尺寸"); gv_init(); mainView.addView(tv); mainView.addView(gv); setContentView(mainView); } /*gv初始化*/ void gv_init(){ gv=new GridView(this); GridView.LayoutParams lp=new GridView.LayoutParams(-1,-1); gv.setLayoutParams(lp); gv.setNumColumns(GridView.AUTO_FIT); gv.setVerticalSpacing(10); gv.setHorizontalSpacing(10); gv.setAdapter(new ImageAdapter(this)); gv.setFocusableInTouchMode(true); gv.setOnItemClickListener(new OnItemClickListener(){public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {tv.setText("图标名称:"+ard.getResources().getResourceEntryName(0x01080000+arg2)+"\n");tv.append("图标Id:0x"+Integer.toHexString(0x10800000+arg2)+"\n");tv.append("图标大小:"+arg1.getWidth()+"x"+arg1.getHeight()+"\n");} }); gv.setOnItemSelectedListener(new OnItemSelectedListener(){public void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3) {tv.setText("图标名称:"+ard.getResources().getResourceEntryName(0x01080000+arg2)+"\n");tv.append("图标Id:0x"+Integer.toHexString(0x10800000+arg2)+"\n");tv.append("图标大小:"+arg1.getWidth()+"x"+arg1.getHeight()+"\n");}public void onNothingSelected(AdapterView<?> arg0) {} }); } class MyThread extends Thread{ } /*ImageAdapter*/ public class ImageAdapter extends BaseAdapter { private Context context; public ImageAdapter(Context c) {context = c;} public int getCount() {return 152;} public Object getItem(int position) {return position;} public long getItemId(int position) {return position;} public View getView(int position, View convertView, ViewGroup parent) { ImageView iv = new ImageView(context); iv.setLayoutParams(new GridView.LayoutParams(-2,-2)); id=0x01080000+position; iv.setImageResource(id); iv.setScaleType(ImageView.ScaleType.CENTER_CROP); return iv; } }}
更多相关文章
- Android(安卓)Studio中的keystore
- Android之自定义View的死亡三部曲之(Measure)
- Android(安卓)字符串应用浅析
- android studio 3.4.1 版 NDK 自动编译产生第三方.so 库(一)
- Android系统显示原理
- Android程序安装后图标不显示
- android 虚拟机设置屏幕尺寸
- Android(安卓)重要基本开发规范
- Android(安卓)修改全局自定义字体样式(字形,大小)※