development

프로그래밍 방식으로 버튼을 숨기는 방법?

big-blog 2020. 6. 24. 07:11
반응형

프로그래밍 방식으로 버튼을 숨기는 방법?


나는이 RelativeLayout두 개의 버튼이 포함되어있다. 서로 겹칩니다.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFFF">


<Button android:text="Play"  
    android:id="@+id/play"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom = "true">
</Button>

<Button android:text="Stop "
    android:id="@+id/stop" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
    android:layout_alignParentBottom = "true">
</Button>


</RelativeLayout>

클릭 이벤트가 호출 될 때 한 번에 하나의 버튼 만 프로그래밍 방식으로 표시하고 싶습니다.

나는 그것을 시도했다 :

playButton.setVisibility(1);

그러나 그것은 효과가 없었습니다. 다음은 내가하려는 일의 예입니다.

playButton = (Button) findViewById(R.id.play);
playButton.setVisibility(1);
playButton.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        //when play is clicked show stop button and hide play button

    }
});

다음 코드를 사용할 수 있습니다 :

playButton = (Button) findViewById(R.id.play);
playButton.setVisibility(View.VISIBLE);
playButton.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        //when play is clicked show stop button and hide play button
        playButton.setVisibility(View.GONE);
        stopButton.setVisibility(View.VISIBLE);
    }
});

아래 코드를 시도하십시오-

playButton.setVisibility(View.INVISIBLE);

또는-

playButton.setVisibility(View.GONE);

다시 표시-

playButton.setVisibility(View.VISIBLE);

아래에서 사용하십시오

View.GONE and View.VISIBLE

숨겨 :

BUTTON.setVisibility(View.GONE);

보여 주다:

BUTTON.setVisibility(View.VISIBLE);

public void OnClick(View.v)
Button b1 = (Button) findViewById(R.id.playButton);
b1.setVisiblity(View.INVISIBLE);

버튼 하나만 사용하여 텍스트를 변경하고 요청시 버튼의 동작을 변경하는 것이 좋습니다. 겹치는 두 개의 버튼을 처리하는 것보다 쉽고 깔끔합니다.

@Override
public void onClick(View v) {
    String curText = ((TextView)v).getText();                 

    if(curText.equals("Play")){
        ((TextView)v).setText("Stop");
    }

    if(curText.equals("Stop")){
        ((TextView)v).setText("Play");
    }
 }

코 틀린에서

myButton.visibility = View.GONE


시도하십시오 View.INVISIBLE.


        Button button = (Button) findViewById(R.id.myButton);
        //set to visible
        button.setVisibility(View.VISIBLE);
        //set to invisble      
        button.setVisibility(View.INVISIBLE);
       //or
        button.setVisibility(View.GONE);

이것을 시도하십시오 : playButton = (Button) findViewById(R.id.play); playButton.setVisibility(View.INVISIBLE);나는 이것이 할 것이라고 생각합니다.


"Xamarin Android"의 경우 :

FindViewById<Button>(Resource.Id.Button1).Visibility = ViewStates.Gone;

참고URL : https://stackoverflow.com/questions/6173400/how-to-hide-a-button-programmatically

반응형