使用切换按钮更改图像

时间:2018-02-22 21:11:10

标签: java android toggle

我是Android开发的新手。我设法完成了一项任务,即更改图像以点击两个不同的按钮。

我的MainActivity.java

package com.example.sandorhorvath.imageviewchange;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;


public class MainActivity extends AppCompatActivity {


    public void lightBox(View view) {
       ImageView image = (ImageView) findViewById(R.id.imageView);
       image.setImageResource(R.drawable.kawa2);
    }

    public void lightBox1(View view) {
        ImageView image = (ImageView) findViewById(R.id.imageView);
        image.setImageResource(R.drawable.kawa1);
    }


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

我希望保持代码非常简单并使用我尝试切换的一个按钮进行相同操作,但我可以使用lightBox识别onClick,但我应该在哪里识别lightBox2?我可以打开功能,但我找不到关闭功能值。

3 个答案:

答案 0 :(得分:0)

尝试使用此逻辑仅使用一个按钮切换图像...将其写入click func

boolean check = false;

public void lightBox(View view) {

 if(check) {
 image
.setImageResource(R.drawable.kawa1                                          ); 
 check = false;}
else {
 image
.setImageResource(R.drawable.kawa2                                        ); 
 check = true;}

 }

答案 1 :(得分:0)

像魅力一样工作,在代码中添加了一点修改,必须定义图像。

boolean check = false;

public void lightBox(View view) {
    ImageView image = (ImageView) findViewById(R.id.imageView);

    if(check) {
        image.setImageResource(R.drawable.kawa1);
        check = false;
    } else {
        image.setImageResource(R.drawable.kawa2);
        check = true;
    }

 }

感谢您的帮助!逻辑是完美的!

答案 2 :(得分:0)

您可以像这样从支持设计库中使用android.support.design.widget.CheckableImageButton

         <android.support.design.widget.CheckableImageButton
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:textOn="@null"
             android:textOff="@null"
             android:background="@null"
             android:src="@drawable/your_image"/>