单击按钮上的Android图像按钮显示

时间:2015-01-08 10:06:58

标签: android

如何在用户点击按钮时创建图像按钮。我尝试了不同的解决方案但没有帮助。

public void onCreate(Bundle savedInstanceState){

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


OnClickListener oclBtnOK =new OnClickListener(){

        public void onClick(View V) {

            getImageButton();


        }

        private void getImageButton() {
            ImageButton imgbtn = new ImageButton(null, null);
            imgbtn.getContext();    
            }


    };
    button1.setOnClickListener(oclBtnOK);
}

2 个答案:

答案 0 :(得分:0)

您可以通过多种方式解决此问题(如果我理解您的问题......)

  • 您可以直接在xml布局中添加imageView,并将其可见性设置为GONE。然后,在您的点击监听器中,您可以执行

    findViewById(R.id.your_image_button).setVisibility(View.VISIBLE);

  • 或者你就像你一样创建一个新的ImageButton,但是你必须将它添加到你的布局中(假设你的活动的主要布局是一个名为main_layout的LinearLayout):

    ((LinearLayout)findViewById(R.id.main_layout)).addView(imgbtn);

答案 1 :(得分:0)

如果您想以编程方式执行此操作

 LayoutParams params;
LinearLayout mainLayout;
Button but;
ImageButton iBut;


@Override
public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);


 mainLayout = new LinearLayout(this);

 but = new Button(this);
 iBut=new ImageButton(this);
 params = new LayoutParams(LayoutParams.WRAP_CONTENT,
           LayoutParams.WRAP_CONTENT);

 mainLayout.addView(but, params);
 but.setText("Click Me");
 but.setOnClickListener(new OnClickListener() {

  public void onClick(View v) {
      mainLayout.addView(iBut, params);
      setContentView(mainLayout);
  }

 });



 setContentView(mainLayout);
}