我正在使用一个按钮,点击它时,会打开一个下拉列表,箭头符号会发生变化。但是我想隐藏按钮再次单击下拉列表。单击按钮的单击可以交替显示和隐藏。我正在使用此代码。
protected void onCreate(Bundle savedInstanceState) {
myphotosBtn=(Button)findViewById(R.id.myPhotosBtn);
myphotosBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
arrowDown.setImageResource(R.drawable.arrow_up);
findViewById(R.id.dropdownList).setVisibility(View.VISIBLE);
}
});
请帮忙。
答案 0 :(得分:3)
您可以使用布尔值。
让我们说..
boolean isButton=true;
protected void onCreate(Bundle savedInstanceState) {
myphotosBtn=(Button)findViewById(R.id.myPhotosBtn);
myphotosBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(isButton){
arrowDown.setImageResource(R.drawable.arrow_up);
findViewById(R.id.dropdownList).setVisibility(View.VISIBLE);
isButton=false;
}else{
arrowDown.setImageResource(R.drawable.down);
findViewById(R.id.dropdownList).setVisibility(View.GONE);
isButton=true;
}
}
});
答案 1 :(得分:1)
试试这个:
protected void onCreate(Bundle savedInstanceState) {
myphotosBtn=(Button)findViewById(R.id.myPhotosBtn);
Boolean temp=false;
myphotosBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(temp){
arrowDown.setImageResource(R.drawable.arrow_down);
findViewById(R.id.dropdownList).setVisibility(View.GONE);
temp=false;
}else{
arrowDown.setImageResource(R.drawable.arrow_up);
findViewById(R.id.dropdownList).setVisibility(View.VISIBLE);
temp=true;
}
}
});
以此为参考,发展你的逻辑。
实现此功能的另一种方法是使用CheckBox而不是Button,并编写onChecked方法代码。您也可以使用它来实现这一目标。
答案 2 :(得分:0)
boolean isshow=false;
protected void onCreate(Bundle savedInstanceState) {
myphotosBtn=(Button)findViewById(R.id.myPhotosBtn);
myphotosBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(!isshow)
arrowDown.setImageResource(R.drawable.arrow_up);
findViewById(R.id.dropdownList).setVisibility(View.VISIBLE);
isshow=true;
} else {
arrowDown.setImageResource(R.drawable.arrow_up);
findViewById(R.id.dropdownList).setVisibility(View.INVISIBLE);
isshow=false;
}
});
您可以使用sharedpreferences
来存储布尔变量值。
答案 3 :(得分:0)
我知道这个问题已经得到解答,但是如果您可能偶然发现这一点正在寻找下拉功能来创建菜单:我想指向this link。
这是Android标准如何创建弹出菜单(看起来与按钮下的下拉列表完全相同)。