`
寻梦者
  • 浏览: 637693 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

android中的R中属性获取相关

 
阅读更多

1.根据R中属性的内存地址获取属性的名称:

     getString(R.string.app_name)

  

2. 根据R中属性的名称获取属性对应的内存地址:

getResources().getIdentifier("icon", R.drawable.class.getSimpleName(), R.class.getPackage().getName())

 

 

测试代码:

 

public class RSourceActivity extends Activity {
	private static final String TAG = "RSourceActivity";
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Log.e(TAG, "===:" + getString(R.string.app_name));
        Log.e(TAG, "===:" +getRInt("icon"));
        Log.e(TAG, "===:" + getResources().getIdentifier("icon", R.drawable.class.getSimpleName(), R.class.getPackage().getName()));
    }
	
    /**
     * 根据R中资源的名称获取对应的内存地址
     * @param name
     * @return
     */
	private int getRInt(String name){
		Field[] fields = R.drawable.class.getDeclaredFields();
		for (Field field : fields) {
			if (field.getName().equals(name)) {
				try {
					return field.getInt(R.drawable.class);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		}
		return 0;
	}
}
 
分享到:
评论

相关推荐

    android获取根View的方法

    在Android开发中,根View(Root View)是布局文件中最高层次的视图容器,它包含并管理着应用界面中的所有子视图。根View通常是LinearLayout、RelativeLayout、FrameLayout等布局组件,它决定了子视图的排列方式和...

    AttributeSet自定义View属性获取

    在上面的代码中,`R.styleable.MyCustomView`是一个标识自定义属性集的常量,它由Android Studio的`generateLayout`功能自动生成,或者手动在`res/values/attrs.xml`中定义。`getColor()`方法尝试获取`myColor`属性...

    Android获取Wifi列表

    在Android系统中,获取Wi-Fi列表是开发移动应用时常见的需求,这主要涉及到与网络连接相关的API交互。本文将详细讲解如何在Android中获取Wi-Fi列表,并根据信号强度来显示不同的网络图标。 首先,要获取Wi-Fi列表,...

    android 获取通知状态

    但请注意,这个方法需要`GET_TASKS`权限,而且在Android 8.0及以上版本中只能获取到与当前前台应用相关的通知。 2. **监听通知事件**:要监听通知事件,如显示、清除或用户点击,可以使用`...

    android 重写控件添加自定义属性

    在这个例子中,我们在构造函数中通过`obtainStyledAttributes()`方法获取了属性集,然后使用`getDimensionPixelSize()`和`getColor()`方法解析出属性值,并将其应用到控件上。 现在,我们可以在布局XML文件中使用这...

    android checkbox 的isChecked属性

    总结来说,`isChecked`属性是Android开发中控制和获取CheckBox选中状态的核心,通过合理运用,可以构建出丰富多样的交互功能,提升应用的易用性和用户体验。了解并熟练掌握这个属性的使用,对于Android开发者来说至...

    Android自定义菜单属性DEMO

    在Android中,我们可以通过定义XML资源文件来创建自定义属性,这些属性可以在布局文件中使用,以控制自定义组件的行为和外观。要实现这一功能,我们需要在项目的res/values目录下创建一个attr.xml文件,定义所需的...

    android自定义属性(三种方法dome)

    在Android开发中,自定义属性是一项非常重要的技能,它能够帮助开发者实现个性化和高度定制的UI组件。本篇文章将深入探讨三种不同的自定义属性方法,并结合相关博客资源,以`Custom_TextView`为例进行详细解释。 一...

    Android8.1-全志R311-如何打开APP获取su权限.pdf

    本文将详细介绍在全志R311平台上,针对Android 8.1系统如何使APP能够获取到`su`权限。 首先,了解SELinux的基本概念。SELinux是一种强制访问控制(MAC)系统,它为Linux内核添加了一个额外的安全层,允许管理员精细...

    Android WebView获取源码

    本文将详细介绍如何在Android中使用`WebView`来获取网页的源码,并封装成一个自定义的`ArthurWebView`组件。 首先,我们了解`WebView`的基本用法。`WebView`继承自`View`,主要通过以下步骤进行初始化: 1. 在布局...

    Android自定义Attr属性

    在Android开发中,自定义Attr属性是提升应用个性化和组件重用性的重要手段。通过自定义Attr,开发者可以创建自己的XML属性,使自定义控件更具有灵活性和扩展性。以下将详细介绍Android自定义Attr属性的使用过程及其...

    android 自定义View并添加属性

    本教程将深入探讨如何在Android中自定义View并为其添加属性,以实现更灵活的界面定制。 首先,自定义View通常涉及到继承一个现有的View类,如View、TextView或ImageView等,或者直接继承ViewGroup来创建自定义容器...

    Android自定义View以及Layout属性

    在自定义View类中,通过TypedArray获取这些属性值,这在构造函数或者onFinishInflate()方法中完成: ```java public CustomView(Context context, AttributeSet attrs) { super(context, attrs); TypedArray a = ...

    Android布局文件的属性值解析

    `android:layout_width` 和 `android:layout_height` 属性分别用于设置视图在父布局中的宽度和高度。除了dp或px单位外,还可以使用 `match_parent` 或 `wrap_content`。例如: ```xml android:layout_width=...

    Android 自定义属性及其引用

    在Android开发中,自定义属性和其引用是提高应用程序可扩展性和灵活性的重要手段。通过创建自定义属性,开发者可以为控件或者布局增加特定的功能,同时保持代码的整洁和模块化。本文将深入探讨Android自定义属性的...

    android adjustNothing下获取键盘高度

    在Android开发中,当用户在应用中使用软键盘时,屏幕布局可能会受到键盘弹出的影响。特别是对于那些希望保持背景不随键盘移动的应用,开发者需要掌握如何在`adjustNothing`模式下处理键盘出现时的问题。`...

    android 自定义view及自定义属性

    1. **在代码中获取属性值**:在`View`的构造函数或`onInitializeHierarchyView()`方法中,通过`context.obtainStyledAttributes(attrs, R.styleable.MyCustomView)`获取属性值。 2. **在布局文件中使用**:在XML...

    Android中自定义属性attrs.xml、TypedArray的使用

    这通常在`onCreateView()`或`onInitializeTextView()`方法中完成,通过`TypedArray`来获取属性值。以下是一个`MyTextView`类的示例: ```java public class MyTextView extends TextView { private int custom...

    android 自定义属性实现 ImageView 透明度渐变效果

    在Android开发中,自定义属性是提升应用独特性和用户体验的重要手段。本教程将详细讲解如何通过自定义属性来实现ImageView的透明度渐变效果。首先,我们从自定义属性的创建开始。 一、创建自定义属性 在Android项目...

    Android 自定义View 之 自定义属性 demo 修改版

    本篇文章将深入探讨如何在Android中进行自定义View,并以"自定义属性demo修改版"为例,讲解如何添加和使用自定义属性。 首先,自定义属性是在Android资源文件中定义的,通常在res/values/attrs.xml中。在这个示例中...

Global site tag (gtag.js) - Google Analytics