প্রোগ্রামিয়মে একটি বোতাম কীভাবে আড়াল করবেন?


151

আমার 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

    }
});

উত্তর:


308

আপনি নিম্নলিখিত কোড ব্যবহার করতে পারেন:

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);
    }
});

2
ধন্যবাদ সুনিল :) আপনি কি দয়া করে দেখুন.ভিউআইবিএল এবং 1 এর মধ্যে পার্থক্য বলতে পারেন (এটি কেবল এনাম)?
বামসি কৃষ্ণ বি

1
কেন 1Visibility সেট? এটি কোনও ধ্রুবক মান নয়।
pqsk

4
View.GONE আইটেমটিকে কোনও বিন্যাসের জায়গা না নেয়। View.INVISIBLE আইটেমটির জন্য স্থান সংরক্ষণ করে। আপনি যখন দৃশ্যমানতা টগল করেন এটি দেখার বিন্যাস পরিবর্তন করে।
gb96

77

নীচের কোডটি ব্যবহার করে দেখুন -

playButton.setVisibility(View.INVISIBLE);

বা -

playButton.setVisibility(View.GONE);

এটি দিয়ে আবার দেখাও -

playButton.setVisibility(View.VISIBLE);



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


4

আমি আপনাকে কেবলমাত্র একটি বোতামটি পরিবর্তনের জন্য প্রয়োজনীয় বোতামের ব্যবহার এবং আচরণের পরামর্শ দেব। ওভারল্যাপিং থাকা দুটি বোতাম পরিচালনা করার চেয়ে এটি সহজ এবং ক্লিনার er

@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");
    }
 }

আমি আপনার ধারণাটি পছন্দ করি যে আমি আইফোন টগলিংয়ে একক বোতামে একাধিক জিনিস করতে পারি। তবে আমি অ্যান্ড্রয়েডে নতুন, আপনি কীভাবে আমাকে এটি করতে পারেন তার একটি উদাহরণের দিকে আমাকে লক্ষ্য করতে পারেন ...
ishষি

4
        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);


2

দয়া করে এটি চেষ্টা করুন: playButton = (Button) findViewById(R.id.play); playButton.setVisibility(View.INVISIBLE);আমি মনে করি এটি এটি করবে।



1

কোটলিন কোড অনেক সহজ:

if(isVisable) {
    clearButton.visibility = View.INVISIBLE
}
else {
    clearButton.visibility = View.VISIBLE
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.