如何从不同的布局更改ImageButton?

时间:2016-08-04 14:29:26

标签: android layout

所以我基本上有两个活动,当我从第二个活动回到第一个活动时,我想要改变第一个活动中ImageButton的透明度。我怎样才能做到这一点? (代码来自第二个活动)

public class StoreActivity extends Activity {

    ImageButton pokeb;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.store_layout);
        pokeb = (ImageButton)findViewById(R.id.pokeball);
    }

    @Override
    public void onBackPressed() {
        super.onBackPressed();

        pokeb.setAlpha(1f);
    }
}

4 个答案:

答案 0 :(得分:2)

从FirstActivity导航到SecondActivity时,可以更改FirstActivity上按钮的转换

答案 1 :(得分:1)

您可以使用startActivityForResult()启动第二项活动。在第二个活动中,您可以使用setResult()设置数据,并且当您返回到onActivityResult()时,您将在{{1}}中的第一个活动中收到数据,然后您可以执行所需的更改。

您可以从众多来源获取上述设置的代码,包括herehere

答案 2 :(得分:1)

您可以在第一个活动中发送onBackPressed()中的操作意图,并在第二个活动中将broadcastReciver设置为此意图并更改onRecive()中的alph

答案 3 :(得分:0)

您可以在第一个活动(FirstActivity.java)中简单地定义一个静态变量(作为标志)。

public static boolean changeImageButton = false;

并检查onResume()中的changeImageButton是否为true:

if (changeImageButton) {
    pokeb.setAlpha(1f);
    changeImageButton = false;  // reset the value.
}

在第二个活动中,在onBackPressed()中:

FirstActivity.changeImageButton = true;