如何使用openweathermap API在android菜单中的°C /°F之间进行更改
menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/degrees"
android:title="Celsius / Fahrenheit"
app:showAsAction="never"/>
</menu>
MainActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.menu.menu:
// How do change between Celsius and Fahrenheit
break;
}
return true;
}
}
如果需要,可使用Dropbox链接进行更深入的查看
Weather Test app
最佳答案
从OpenWeather Documentation.
单位格式
描述:
提供标准,公制和英制单位。
参数:
公制单位,英制。不使用单位参数时,默认情况下格式为标准。
温度单位为华氏度,摄氏温度和开氏温度。
For temperature in Fahrenheit use units=imperial
For temperature in Celsius use units=metric
Temperature in Kelvin is used by default, no need to use units parameter in API call
所有API参数列表,单位为openweathermap.org/weather-data
API调用示例:
standard api.openweathermap.org/data/2.5/find?q=London
metric api.openweathermap.org/data/2.5/find?q=London&units=metric
imperial api.openweathermap.org/data/2.5/find?q=London&units=imperial