我有这个程序会改变我从日历中获得的值的小时和分钟。
所以我只改变了一小时,我在这里做了一个时区的事情。所以,我所做的是在Strings.xml上创建一个TimeZones数组并将它放在一个微调器上。然后,当我更改微调器上的项目时,我将textview的文本设置为微调器上的选定值。
我可以在这里做到。
我的问题在于条件陈述。我有一个按钮,可以在TextView中获取文本,我将在我的If语句中使用它。这是我的语法。
这将获取Spinner到TextView的值。
Spinner TimezoneSelect = (Spinner)findViewById (R.id.spinner1);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.timzones, R.layout.support_simple_spinner_dropdown_item);
TimezoneSelect.setAdapter(adapter);
//final String SelectedTimeZone = TimezoneSelect.getSelectedItem().toString();
TimezoneSelect.setOnItemSelectedListener(new OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
TimeZoneStatus = parent.getItemAtPosition(position).toString();
TimeZoneDisplay.setText(TimeZoneStatus);
这是错误的If语句。
public void onClick(View v) {
// TODO Auto-generated method stub
int newhour;
String TimeZoneNow = TimeZoneStatus.trim().toString();
String Jakarta = "UTC+7:00 (Jakarta)";
if ((TimeZoneNow == "UTC+7:00(Jakarta)") || (TimeZoneNow == Jakarta))
//^lol desperate code
{
newhour = hour - 1;
TimeText.setText(newhour + ":" + minutes);
}
}
});
帮助! :C
答案 0 :(得分:1)
试试这种方式
if(TimeZoneNow.equals(Jakarta)
使用.equals()
方法进行字符串比较
答案 1 :(得分:0)
试试这个:
在您的情况下,将==
替换为eqauls()
。
说明:
==
运算符用于比较引用。
equals()
用于比较内容。
答案 2 :(得分:0)
使用此代码
if ((TimeZoneNow .equalsIgnoreCase(Jakarta))
//^lol desperate code
{
newhour = hour - 1;
TimeText.setText(newhour + ":" + minutes);
}