Java Android-微调器设置TextView可见/不可见
我正在尝试执行我的第一个Java Android-微调器设置TextView可见/不可见,java,android,android-spinner,Java,Android,Android Spinner,我正在尝试执行我的第一个微调器,但遇到了一些困难,例如我不知道是否可以通过微调器获得选项。getSelectItem==“some string” 请看一下我目前的代码 填充微调器: public void addItemsOnSpinner() { Spinner buttonSpinner = (Spinner) findViewById(R.id.buttonSpinner); List<String> list = new ArrayList<Strin
微调器
,但遇到了一些困难,例如我不知道是否可以通过微调器获得选项。getSelectItem==“some string”
请看一下我目前的代码
填充微调器:
public void addItemsOnSpinner() {
Spinner buttonSpinner = (Spinner) findViewById(R.id.buttonSpinner);
List<String> list = new ArrayList<String>();
list.add("Ultimos 5 lancamentos");
list.add("Ultimos 7 lancamentos");
list.add("Ultimos 10 lancamentos");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
buttonSpinner.setAdapter(dataAdapter);
}
if(buttonSpinner.getSelectedItem().toString() == "Ultimos 10 lancamentos"){
textView.setVisibility(View.VISIBLE);
}
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="Deposito"
android:visibility="invisible"
android:id="@+id/textView"
android:layout_row="2"
android:layout_column="0"
android:layout_gravity="center|left" />
TextView textView = (TextView)findViewById(R.id.textView);
按要求查看文本代码:
public void addItemsOnSpinner() {
Spinner buttonSpinner = (Spinner) findViewById(R.id.buttonSpinner);
List<String> list = new ArrayList<String>();
list.add("Ultimos 5 lancamentos");
list.add("Ultimos 7 lancamentos");
list.add("Ultimos 10 lancamentos");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
buttonSpinner.setAdapter(dataAdapter);
}
if(buttonSpinner.getSelectedItem().toString() == "Ultimos 10 lancamentos"){
textView.setVisibility(View.VISIBLE);
}
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="Deposito"
android:visibility="invisible"
android:id="@+id/textView"
android:layout_row="2"
android:layout_column="0"
android:layout_gravity="center|left" />
TextView textView = (TextView)findViewById(R.id.textView);
是的,你可以这样做,它会很好地工作,但请使用
buttonSpinner.getSelectedItem().toString().equals("Ultimos 10 lancamentos");
是的,你可以这样做,它会很好地工作,但请使用
buttonSpinner.getSelectedItem().toString().equals("Ultimos 10 lancamentos");
是的,你可以这样做,它会很好地工作,但请使用
buttonSpinner.getSelectedItem().toString().equals("Ultimos 10 lancamentos");
是的,你可以这样做,它会很好地工作,但请使用
buttonSpinner.getSelectedItem().toString().equals("Ultimos 10 lancamentos");
正如Stefano所指出的,您的比较应该使用
equals
(它比较字符串内容,而==
比较对象引用)
否则,您的if
语句应该可以工作,但是不清楚您从何处调用它(这可能是问题的原因)。如果要在选择微调器项后立即进行比较,则需要设置一个OnItemSelectedListener
,并在那里进行比较
下面是一个如何内联声明此侦听器的示例:
buttonSpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
String selectedItem = parent.getSelectedItem().toString();
if (selectedItem.equals("Ultimos 10 lancamentos"))
{
textView.setVisibility(View.VISIBLE);
}
}
public void onNothingSelected(AdapterView<?> parent)
{
}
});
buttonSpinner.setOnItemSelectedListener(新微调器.OnItemSelectedListener()
{
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id)
{
字符串selectedItem=parent.getSelectedItem().toString();
如果(选择编辑项等于(“Ultimos 10 lancamentos”))
{
textView.setVisibility(View.VISIBLE);
}
}
未选择公共无效(AdapterView父级)
{
}
});
正如Stefano所指出的,您的比较应该使用equals
(比较字符串内容,而不是比较对象引用的=
)
否则,您的if
语句应该可以工作,但是不清楚您从何处调用它(这可能是问题的原因)。如果要在选择微调器项后立即进行比较,则需要设置一个OnItemSelectedListener
,并在那里进行比较
下面是一个如何内联声明此侦听器的示例:
buttonSpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
String selectedItem = parent.getSelectedItem().toString();
if (selectedItem.equals("Ultimos 10 lancamentos"))
{
textView.setVisibility(View.VISIBLE);
}
}
public void onNothingSelected(AdapterView<?> parent)
{
}
});
buttonSpinner.setOnItemSelectedListener(新微调器.OnItemSelectedListener()
{
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id)
{
字符串selectedItem=parent.getSelectedItem().toString();
如果(选择编辑项等于(“Ultimos 10 lancamentos”))
{
textView.setVisibility(View.VISIBLE);
}
}
未选择公共无效(AdapterView父级)
{
}
});
正如Stefano所指出的,您的比较应该使用equals
(比较字符串内容,而不是比较对象引用的=
)
否则,您的if
语句应该可以工作,但是不清楚您从何处调用它(这可能是问题的原因)。如果要在选择微调器项后立即进行比较,则需要设置一个OnItemSelectedListener
,并在那里进行比较
下面是一个如何内联声明此侦听器的示例:
buttonSpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
String selectedItem = parent.getSelectedItem().toString();
if (selectedItem.equals("Ultimos 10 lancamentos"))
{
textView.setVisibility(View.VISIBLE);
}
}
public void onNothingSelected(AdapterView<?> parent)
{
}
});
buttonSpinner.setOnItemSelectedListener(新微调器.OnItemSelectedListener()
{
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id)
{
字符串selectedItem=parent.getSelectedItem().toString();
如果(选择编辑项等于(“Ultimos 10 lancamentos”))
{
textView.setVisibility(View.VISIBLE);
}
}
未选择公共无效(AdapterView父级)
{
}
});
正如Stefano所指出的,您的比较应该使用equals
(比较字符串内容,而不是比较对象引用的=
)
否则,您的if
语句应该可以工作,但是不清楚您从何处调用它(这可能是问题的原因)。如果要在选择微调器项后立即进行比较,则需要设置一个OnItemSelectedListener
,并在那里进行比较
下面是一个如何内联声明此侦听器的示例:
buttonSpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
String selectedItem = parent.getSelectedItem().toString();
if (selectedItem.equals("Ultimos 10 lancamentos"))
{
textView.setVisibility(View.VISIBLE);
}
}
public void onNothingSelected(AdapterView<?> parent)
{
}
});
buttonSpinner.setOnItemSelectedListener(新微调器.OnItemSelectedListener()
{
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id)
{
字符串selectedItem=parent.getSelectedItem().toString();
如果(选择编辑项等于(“Ultimos 10 lancamentos”))
{
textView.setVisibility(View.VISIBLE);
}
}
未选择公共无效(AdapterView父级)
{
}
});
此文本视图是什么?它是一个单独的视图还是要隐藏微调器的默认文本视图?它是一个单独的视图。这里的目的是制作一个列表,但我使用textView测试只是为了学习微调器,如果我选择第三个选项(ultimos 10 lancamentos),它将显示5个更多的textView是的,你可以这样做。成功提取选定微调器项的文本后,可以相应地执行逻辑。当然,您可以设置文本视图的可见性。但在您的逻辑中,不能使用“==”比较两个字符串值。你必须使用.equals()方法。这个textView是什么?它是一个单独的视图还是要隐藏微调器的默认文本视图?它是一个单独的视图。这里的目的是制作一个列表,但我使用textView测试只是为了学习微调器,如果我选择第三个选项(ultimos 10 lancamentos),它将显示5个更多的textView是的,你可以这样做。成功提取选定微调器项的文本后,可以相应地执行逻辑。当然,您可以设置文本视图的可见性。但在您的逻辑中,不能使用“==”比较两个字符串值。对于该.Wh,必须使用.equals()方法