首页 > 移动平台 > 详细

Android利用资源名称获取其ID(一)--->getIdentifier()

时间:2014-03-12 00:50:46      阅读:549      评论:0      收藏:0      [点我收藏+]
MainActivity如下:
package cc.wy;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
/**
 * Demo描述:
 * 利用getIdentifier()方法获取资源ID
 * 
 * 方法描述:
 * getIdentifier(String name, String defType, String defPackage)
 * 第一个参数:资源的名称
 * 第二个参数:资源的类型(drawable,string等)
 * 第三个参数:包名
 */
public class MainActivity extends Activity {
	private Context mContext;
	private ImageView mImageView;
	private TextView mTextView;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        init();
    }
    
    private void init(){
    	mContext=this;
    	//获取图片资源的ID
    	mImageView=(ImageView) findViewById(R.id.imageView);
    	int drawableId = mContext.getResources().getIdentifier("ic_launcher","drawable", mContext.getPackageName());
    	mImageView.setImageResource(drawableId);
    	System.out.println("----> 获取到的图片资源 drawableId="+drawableId);
    	
    	//获取字符串资源
    	mTextView=(TextView) findViewById(R.id.textView);
    	int stringId = mContext.getResources().getIdentifier("hello","string", mContext.getPackageName());
    	mTextView.setText(stringId);
    	System.out.println("----> 获取到的字符串资源 stringId="+stringId);

    }
}

main.xml如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ffffff" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:text="利用getIdentifier()方法获取资源ID" />

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/imageView"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="50dip" />

</RelativeLayout>

strings.xml如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="hello">Hello World, MainActivity!</string>
    <string name="app_name">TestGetIdentifier</string>

</resources>


Android利用资源名称获取其ID(一)--->getIdentifier(),布布扣,bubuko.com

Android利用资源名称获取其ID(一)--->getIdentifier()

原文:http://blog.csdn.net/lfdfhl/article/details/21017889

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!