相关疑难解决方法(0)

以编程方式更改从API响应获得的颜色资源的值

比方说,在我的API调用中,我有一个被调用的参数color.是否可以编辑或修改现有的R.colors.color以从API结果中分配颜色?

举个例子:

我打电话给我的API并返回green,现在我想用ie(绿色Toolbar,绿色TextView等)加载我的应用程序,这可能吗?

我的第一个想法是:

colors.xml被调用上创建一个项目,demo然后为它指定一个默认颜色,然后demo在我想要的任何地方使用这个颜色(Button,TextView等等)然后我认为可以用API的结果以编程方式更改这个值,所以我不需要创建一个SharedPreferences或类似的东西,以避免更多的代码.

正如@YS对我说的那样

不幸的是,你必须手动设置文本或视图的颜色...... :(

我想如果有其他方法可以做到这一点,因为我不知道Activities我的项目将包含多少,所以如果有其他方法可以做到这一点我很高兴听到其他猜测.

编辑

我正在尝试@Jared Rummler的答案,也许我做错了什么......我创造了一个简单的Json,我把我的资产我解析了Json,我把它放在一个GlobalConstant然后我做了一个"简单的应用程序".

首先,我有一个TextView和a Button包含"your_special_color",并返回它我把GlobalConstant int如下:

case "your_special_color":                
            return GlobalConstant.color; 
Run Code Online (Sandbox Code Playgroud)

然后我尝试的是我的第一个Activity有1 TextView和1,Button正如我之前所说,他们有颜色"your_special_color",我不想改变它,但我有一个Intent在我Button打开另一个Activity包含相同,但与GlobalConstant.color而且它没有改变.

我试过这样做(我的第二个活动):

public class Main2Activity extends AppCompatActivity {
private Res …
Run Code Online (Sandbox Code Playgroud)

android aapt android-resources

73
推荐指数
4
解决办法
5万
查看次数

以编程方式更改R.string的值

我在strings.xml文件中声明了一个字符串,并在我的活动中将其用作R.string.compose_title.(将其设置为标题,即setTitle(R.id.compose_title)).现在在某些情况下我想编辑字符串然后用它来设置标题.我怎样才能做到这一点 ?

PS我只需要更改单个字符串的值,因此使用本地化为每种情况(根据用户而变化)声明一个新的strings.xml似乎效率低.

string resources android

25
推荐指数
3
解决办法
6万
查看次数

标签 统计

android ×2

aapt ×1

android-resources ×1

resources ×1

string ×1