アプリで利用可能なさまざまなアクティビティのリストをユーザーに表示したいのですが、「加速度センサー コントロール」や「ライン フォロワー」など、名前を明示的にしたいと考えています。現在、アクティビティはString
配列に格納されています。これらのアクティビティ名は、表示および呼び出されるものです。「Line Follower」を表示して、「LineFollower」アクティビティを呼び出したいと思います (スペースなし)。それを行っている例は見つかりませんでした。
利用可能なアクティビティを表示する ListActivity は次のとおりです。
public class ActivityList extends ListActivity {
// here I'd like to have "Accelerometer Control", "Touch Control"...
String[] activities = new String[] {"AccelerometerControl", "TouchControl", "ArrowControl", "LineFollower", "Piano", "SendData", "LEDEqualizer", "Program"};
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(ActivityList.this, android.R.layout.simple_list_item_1, activities));
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
String activity = activities[position];
try
{
Class<?> activityClass = Class.forName("com.bluetooth." + activity);
Intent intent = new Intent(ActivityList.this, activityClass);
startActivity(intent);
}
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
}
}