android-Android:getRsources()和R类获取资源的区别

问题描述

Android:getRsources()和R类获取资源的区别
我是一个安卓初学者,今天遇到一段代码

        float width = this.getResources().getDimension(R.dimen.text_width);    float height = this.getResources().getDimension(R.dimen.text_height);    //int width = R.dimen.text_width;    //int height = R.dimen.text_height;

用getResources 和 直接用R类 都可以获取到我的资源,那么这两者有什么区别呢

解决方案

楼主,先别急。首先,你所说的getResource和直接用R类能获取到你的资源,这个是有问题的。你可以试着用Log()输出一下width和heigth就会看出来,getResource得到的是dimen文件中对应资源的值,而通过R类获取,得到的是个对应资源的id。
就好比一条绳上栓了个箱子,箱子里装了辆自行车。楼主用getResource,就好比顺着绳子找到了箱子,并且打开了箱子拿到了自行车。而用R类,就好比顺着绳子只找到了箱子,并没有打开它。然后...就没有然后了。
这是我解答的最细致的一次...楼主加油

时间: 2025-01-02 00:30:41

android-Android:getRsources()和R类获取资源的区别的相关文章

Android应用开发提高系列(5)——Android动态加载(下)——加载已安装APK中的类和资源

前言  Android动态加载(下)--加载已安装APK中的类和资源.   声明 欢迎转载,但请保留文章原始出处:)  博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblogs.com  Android中文Wiki:http://wikidroid.sinaapp.com     正文 一.目标 注意被调用的APK在Android系统中是已经安装的.    上篇文章:Android应用开发提高系列(4)--Android动态加载(上)--加载

Android 图片轮播实现及获取Android的资源信息

在手机app应用中我们经常会看到图片轮播动画效果,Android中想要实现图片轮播,主要用到ViewPager这个控件来实现,这个控件的主要功能是实现图片的滑动效果. 那么有了滑动,在滑动的基础上附上图片也就实现了图片轮播的效果...这个控件类似于ListView,需要使用到适配器这个东西,适配器在这里的作用是为轮播时设置一些效果...这里需要使用到PagerAdapter适配器...下面来一个例子,这个例子的效果是在图片轮播的同时显示播放的是第几张图片的信息...并且下面的点也是会随之进行变化

【我的Android进阶之旅】Android使用getIdentifier()方法根据资源名来获取资源id

有时候我们想动态的根据一个资源名获得到对应的资源id,就可以使用getResources().getIdentifier()方法来获取该id.然后再使用该id进行相关的操作. 1.Demo示例 下面用一个小Demo来讲解如何使用getResources().getIdentifier()方法来获取该id. 例如,新建一个Android项目,项目结构部分截图如下所示: MainActivity代码如下: package com.oyp.demo; import android.os.Bundle;

Android使用getIdentifier()获取资源Id的方法_Android

本文实例讲述了Android使用getIdentifier()获取资源Id的方法.分享给大家供大家参考,具体如下: int i= getResources().getIdentifier("icon", "drawable", getPackageName()) ; if(i>0) {Log.i("aa","aa");} else {Log.i("vbv","aa");} 或者:

Android热身:通过网络获取资源并更新UI组件

Android热身:通过网络获取资源并更新UI组件 目标 点击"发送请求"按钮,下载某网页的html源码,并显示在TextView控件上:点击"清空",清除TextView控件上的内容 效果图: 要点 开启网络权限 网络请求独立为一个模块 按钮点击事件的监听器 新开线程进行网络请求调用 用handler更新UI组件 源码 //MainActivity.java 主程序 package com.example.chris.handlerdemo; import and

Android使用getIdentifier()获取资源Id的方法

本文实例讲述了Android使用getIdentifier()获取资源Id的方法.分享给大家供大家参考,具体如下: int i= getResources().getIdentifier("icon", "drawable", getPackageName()) ; if(i>0) {Log.i("aa","aa");} else {Log.i("vbv","aa");} 或者:

android做json解析,从服务器获取资源

问题描述 android做json解析,从服务器获取资源 public static List<Model> getJSONResource(String path) throws Exception { URL url = new URL(path); HttpURLConnection connection = (HttpURLConnection)url.openConnection(); connection.setConnectTimeout(5000); connection.se

Android中实现根据资源名获取资源ID_Android

接触过Android开发的同学们都知道在Android中访问程序资源基本都是通过资源ID来访问.这样开发起来很简单,并且可以不去考虑各种分辨率,语言等不同资源显式指定. 痛点 但是,有时候也会有一些问题,比如我们根据服务器端的值取图片,但是服务器端绝对不会返回给我们的是资源id,最多是一种和文件名相关联的值,操作资源少的时候,可以维护一个容器进行值与资源ID的映射,但是多的话,就需要另想办法了. 便捷的方法 在这种情况下,使用文件名来得到资源ID显得事半功倍. 通过调用Resources的get

Android中实现根据资源名获取资源ID

接触过Android开发的同学们都知道在Android中访问程序资源基本都是通过资源ID来访问.这样开发起来很简单,并且可以不去考虑各种分辨率,语言等不同资源显式指定. 痛点 但是,有时候也会有一些问题,比如我们根据服务器端的值取图片,但是服务器端绝对不会返回给我们的是资源id,最多是一种和文件名相关联的值,操作资源少的时候,可以维护一个容器进行值与资源ID的映射,但是多的话,就需要另想办法了. 便捷的方法 在这种情况下,使用文件名来得到资源ID显得事半功倍. 通过调用Resources的get