可以访问另一个布局中的元素

时间:2015-11-27 20:14:09

标签: android layout

在我的应用程序中,我有一个expandablelistview,其中我使用布局来显示列表视图的项目。 现在我想改变那个布局中textview的颜色,但我不知道该怎么做。

View view = View.inflate(getBaseContext(),R.layout.parent_layout, null);

    TextView parent_txt  = (TextView) view.findViewById(R.id.parent_txt);
   parent_txt.setTextColor(Color.parseColor("#000000"));

1 个答案:

答案 0 :(得分:0)

似乎正在发生的事情是,在创建视图之前,您正在改变TextView的颜色,因为布局来自尚未启动的另一个Activity

首先,创建一个Intent以转换到您的其他活动:

Intent i = new Intent(FirstActivity.this, SecondActivity.class);
i.putExtra("textColor", "#000000")
startActivity(i);

接下来,在SecondActivity的onCreate中,获取颜色:

Bundle bundle = getIntent().getExtras();
String textColor = bundle.getString("textColor");
//update the text
TextView parent_txt  = (TextView) findViewById(R.id.parent_txt);
parent_txt.setTextColor(Color.parseColor(textColor));

这应该有效,因为现在创建了布局,因为代码是在使用R.layout.parent_txt活动布局的同一活动中运行的。