radioGroup如何隐藏按钮android

时间:2017-04-17 14:28:55

标签: java android

你好我想创建一个列表。在长按工具栏上将显示选项以选择全部并删除所选。我不知道我是否应该使用RadioGroup并隐藏按钮或使用listView并创建自己的行示例并在那里添加单选按钮。

4 个答案:

答案 0 :(得分:0)

我不能非常具体,我可以说,通常要实现自己的特定目标,创建自己的行将证明对您的最终目标有益。而不是隐藏RadioGroup

答案 1 :(得分:0)

当用户长按项目列表时,默认标准的android行为是Contextual Action Bar(我可以解释) 如enter image description here

众多资源中的一个是

http://theopentutorials.com/examples/android/listview/android-contextual-action-bar-for-listview-item-deletion-using-actionbarsherlock/

https://androidkennel.org/contextual-toolbar-actionbar-tutorial/

答案 2 :(得分:0)

我对了解menuInflater有点问题。此类将菜单XML文件实例化为Menu对象。但是设置了新菜单

public boolean onCreateActionMode(ActionMode actionMode, Menu menu) { //when this method is going to be made? Menu is int the toolbar and ListView isn't connected with toolbar so which menu I get in the next next line?
    MenuInflater menuInflater = getMenuInflater();
    menuInflater.inflate(R.menu.toolbar_cab, menu); // in this line set a new menu
    return true;

}`

答案 3 :(得分:0)

从RadioGroup中隐藏RadioButton非常简单。您只需编写btnRadio1.setVisibility(View.INVISIBLE);。但是您必须知道以下规则:例如,如果RadioGroup中有4个RadioButton,则可以使它们仅以相反的顺序不可见!我的意思是它们在布局.xml文件的RadioGroup中定义的顺序。仅隐藏btnRadio3和btnRadio4可见是不可能的!您必须隐藏btnRadio3和btnRadio4。或仅btnRadio4。因此,如果要隐藏1个按钮,则为按钮4。如果要隐藏2个按钮-它们为4和3,如果要隐藏3个按钮,则为4、3和2。不起作用。 这是我的测验应用程序中的代码,每个问题可能有2到6个答案。当前问题的答案存储在字符串答案[]的数组中。

RadioButton btnAnswer1;
RadioButton btnAnswer2;
RadioButton btnAnswer3;
RadioButton btnAnswer4;
RadioButton btnAnswer5;
RadioButton btnAnswer6;
RadioGroup  radioGroup;

// onCreate activity

btnAnswer1 = (RadioButton) findViewById(R.id.btnAnswer1);
btnAnswer2 = (RadioButton) findViewById(R.id.btnAnswer2);
btnAnswer3 = (RadioButton) findViewById(R.id.btnAnswer3);
btnAnswer4 = (RadioButton) findViewById(R.id.btnAnswer4);
btnAnswer5 = (RadioButton) findViewById(R.id.btnAnswer5);
btnAnswer6 = (RadioButton) findViewById(R.id.btnAnswer6);
radioGroup = (RadioGroup) findViewById(R.id.radioGroup);

radioGroup.clearCheck();


    btnAnswer1.setVisibility(View.VISIBLE);
    btnAnswer2.setVisibility(View.VISIBLE);
    numberOfAnswers = 2; //at least 2 answers
//if 3-d element is empty i.e. 2 answers only
//i.e. buttons 3,4,5,6 must be hidden              
    if (answers[2].isEmpty()) { 
        btnAnswer3.setVisibility(View.INVISIBLE);
        btnAnswer4.setVisibility(View.INVISIBLE);
        btnAnswer5.setVisibility(View.INVISIBLE);
        btnAnswer6.setVisibility(View.INVISIBLE);
    } else {
        btnAnswer3.setVisibility(View.VISIBLE);
        numberOfAnswers = 3;   
    }
    if (answers[3].isEmpty()) {
        btnAnswer4.setVisibility(View.INVISIBLE);
        btnAnswer5.setVisibility(View.INVISIBLE);
        btnAnswer6.setVisibility(View.INVISIBLE);
    } else {  
        btnAnswer4.setVisibility(View.VISIBLE);
        numberOfAnswers = 4;   
    } 
    if (answers[4].isEmpty()) {
        btnAnswer5.setVisibility(View.INVISIBLE);
        btnAnswer6.setVisibility(View.INVISIBLE);
    } else {  
        btnAnswer5.setVisibility(View.VISIBLE);
        numberOfAnswers = 5;   
    } 
    if (answers[5].isEmpty()) {
        btnAnswer6.setVisibility(View.INVISIBLE);
    } else {  
        btnAnswer6.setVisibility(View.VISIBLE);
        numberOfAnswers = 6;   
    } 

这是xml文件:

<ScrollView 
 android:layout_height="fill_parent"
 android:layout_width="fill_parent"
 android:layout_marginLeft="5dip"
 android:orientation="vertical">        

    <RadioGroup
        android:id="@+id/radioGroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <RadioButton
            android:id="@+id/btnAnswer1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />
        <RadioButton
            android:id="@+id/btnAnswer2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />
        <RadioButton
            android:id="@+id/btnAnswer3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />
        <RadioButton
            android:id="@+id/btnAnswer4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />
        <RadioButton
            android:id="@+id/btnAnswer5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />
        <RadioButton
            android:id="@+id/btnAnswer6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />

    </RadioGroup>
</ScrollView>