В виджете Android Picker из http://code.google.com/p/android-wheel/ я разбудил проект, используя http://android -wheel.googlecode.com / svn / trunk /
Затем я импортировал новый проект Android - WheelDemo из исходного кода в моей Eclipse IDE.
После этого я изменился:
в WheelDemo.java :
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
//Since another activity is being called in this way,
//I am sending a list with every intent, but this can be changed
Map map = (Map) l.getItemAtPosition(position);
ArrayList<String> list = new ArrayList<String>();
list.add("One");
list.add("Two");
Intent intent = (Intent) map.get("intent");
intent.putStringArrayListExtra("list", list);
startActivity(intent);
}
В CitiesActivity.java :
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.cities_layout);
String[] arrayString = null;
ArrayList<String> list = new ArrayList<String>();
list = getIntent().getExtras().getStringArrayList("list");
if (list != null) {
arrayString = new String[list.size()];
if (!list.isEmpty()) {
for (int i = 0; i < list.size(); i++)
arrayString[i] = list.get(i);
} else
System.out.println("list is empty");
} else
System.out.println("list is null");
final WheelView country = (WheelView) findViewById(R.id.country);
country.setVisibleItems(3);
country.setViewAdapter(new CountryAdapter(this));
final String cities[][] = new String[][] {
new String[] { "New York", "Washington", "Chicago", "Atlanta",
"Orlando" },
new String[] { "Ottawa", "Vancouver", "Toronto", "Windsor",
"Montreal" },
new String[] { "Kiev", "Dnipro", "Lviv", "Kharkiv" },
arrayString, };
.....
И тогда я получаю такую картину:
P.S. Я использовал WheelDemo исходный код, а не Wheel one