要實現AlertDialog的單選功能,你可以使用setSingleChoiceItems()
方法。這個方法允許你設置一個包含單選選項的列表,并為每個選項設置一個監聽器,以便在用戶選擇某個選項時執行相應的操作。下面是一個簡單的示例:
import androidx.appcompat.app.AlertDialog;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showRadioButtonDialog();
}
});
}
private void showRadioButtonDialog() {
String[] options = {"Option 1", "Option 2", "Option 3"};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Select an option");
builder.setSingleChoiceItems(options, -1, new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String selectedOption = parent.getItemAtPosition(position).toString();
Toast.makeText(MainActivity.this, "Selected: " + selectedOption, Toast.LENGTH_SHORT).show();
}
});
builder.setPositiveButton("OK", null);
builder.show();
}
}
在這個示例中,我們創建了一個包含三個單選選項的AlertDialog。setSingleChoiceItems()
方法的第一個參數是一個字符串數組,表示選項列表;第二個參數是默認選中的選項(-1表示沒有默認選中);第三個參數是一個OnItemClickListener
,當用戶選擇一個選項時,它會執行相應的操作。在這個例子中,我們只是彈出一個Toast消息,顯示用戶選擇的選項。