簡體   English   中英

如何禁用 Android 上的切換按鈕?

[英]How do I disable the toggle button on Android?

如果我打開第一個按鈕,我將使用三個切換按鈕,因此所有 3 個按鈕都應該被禁用。 雖然我已經編寫了代碼,但我沒有得到,為什么它不起作用。 我的代碼如下..

import android.app.Activity;

import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;


import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.Toast;
import android.widget.ToggleButton;

import com.parser.XMLData;
import com.parser.XMLDataParser;

public class SyncDataPage extends Activity
{
    ToggleButton toggle_syncing;
    ToggleButton toggle_replace_data;
    ToggleButton toggle_replace_photos;

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.sync_data_page);

        initializeToggleButtons();
    }


    private void initializeToggleButtons()
    {
        toggle_syncing = (ToggleButton) findViewById(R.id.sync_data_toggle_syncing);
        toggle_replace_data = (ToggleButton) findViewById(R.id.sync_data_toggle_data_in_contacts);
        toggle_replace_photos = (ToggleButton) findViewById(R.id.sync_data_toggle_photos_in_contacts);
        toggle_syncing.setOnClickListener(new OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                if(toggle_syncing.isChecked())
                {
                    // Toast.makeText(getApplicationContext(), "Syncing Starts", Toast.LENGTH_SHORT).show();
                    toggle_syncing.setFocusable(false);
                    toggle_replace_data.setFocusable(false);
                    toggle_replace_photos.setFocusable(false);
                    btn_back.setFocusable(false);
                    bar_syncing.setVisibility(LinearLayout.VISIBLE);
                    new ContactsDataSync().execute();
                }
                else
                {
                    // Toast.makeText(getApplicationContext(), "toggle_syncing Unchecked", Toast.LENGTH_SHORT).show();
                }
            }
        });


        toggle_replace_data.setOnClickListener(new OnClickListener()
        {
          @Override
          public void onClick(View v)
          {
              if(toggle_replace_data.isChecked())
              {
                  // Toast.makeText(getApplicationContext(), "toggle_replace_data Checked", Toast.LENGTH_SHORT).show();
              }
              else
              {
                  // Toast.makeText(getApplicationContext(), "toggle_replace_data Unchecked", Toast.LENGTH_SHORT).show();
              }
          }
        });


        toggle_replace_photos.setOnClickListener(new OnClickListener()
        {
          @Override
          public void onClick(View v)
          {
              if(toggle_replace_photos.isChecked())
              {
                  // Toast.makeText(getApplicationContext(), "toggle_replace_photos Checked", Toast.LENGTH_SHORT).show();
              }
              else
              {
                  // Toast.makeText(getApplicationContext(), "toggle_replace_photos Unchecked", Toast.LENGTH_SHORT).show();
              }
          }
        });
    }

使用setEnabled(false)而不是setFocusable(false)

只需使用

setEnabled(false) 

在按鈕的 onClickListener() 方法中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM