这些程序是为了显示一个下拉列表:
string.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">MainHelloSpinner</string>
<string name="getColor">选择色彩:</string>
<string name="colors">
<item>黑色 | Black</item>
<item>蓝色 | Blue</item>
<item>棕色 | Brown</item>
<item>绿色 | Green</item>
<item>灰色 | Grey</item>
<item>粉色 | Pink</item>
<item>紫色 | Purple</item>
<item>红色 | Red</item>
<item>白色 | White</item>
<item>黄色 | Yellow</item>
</string>
</resources>main.xml内容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/getColor"
/>
<Spinner android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:prompt="@string/colors"/>
</LinearLayout>
Activity文件如下:
package com.android.test;import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.Spinner;public class SpinnerActivity extends Activity {
/** Called when the activity is first created. */
private Spinner spinner;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
spinner=(Spinner)findViewById(R.id.spinner);
ArrayAdapter adapter=ArrayAdapter.createFromResource(this, R.string.colors,android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
spinner.setAdapter(adapter);
}
}
运行后抛出问题:
[2010-11-15 11:02:08 - ddmlib]確立された接続がホスト コンピュータのソウトウェアによって中止されました。
java.io.IOException: 確立された接続がホスト コンピュータのソウトウェアによって中止されました。
at sun.nio.ch.SocketDispatcher.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(Unknown Source)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(Unknown Source)
at sun.nio.ch.IOUtil.write(Unknown Source)
at sun.nio.ch.SocketChannelImpl.write(Unknown Source)
at com.android.ddmlib.JdwpPacket.writeAndConsume(JdwpPacket.java:213)
at com.android.ddmlib.Client.sendAndConsume(Client.java:573)
at com.android.ddmlib.HandleHeap.sendREAQ(HandleHeap.java:349)
at com.android.ddmlib.Client.requestAllocationStatus(Client.java:419)
at com.android.ddmlib.DeviceMonitor.createClient(DeviceMonitor.java:840)
at com.android.ddmlib.DeviceMonitor.openClient(DeviceMonitor.java:808)
at com.android.ddmlib.DeviceMonitor.processIncomingJdwpData(DeviceMonitor.java:767)
at com.android.ddmlib.DeviceMonitor.deviceClientMonitorLoop(DeviceMonitor.java:635)
at com.android.ddmlib.DeviceMonitor.access$100(DeviceMonitor.java:42)
at com.android.ddmlib.DeviceMonitor$3.run(DeviceMonitor.java:563)
string.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">MainHelloSpinner</string>
<string name="getColor">选择色彩:</string>
<string name="colors">
<item>黑色 | Black</item>
<item>蓝色 | Blue</item>
<item>棕色 | Brown</item>
<item>绿色 | Green</item>
<item>灰色 | Grey</item>
<item>粉色 | Pink</item>
<item>紫色 | Purple</item>
<item>红色 | Red</item>
<item>白色 | White</item>
<item>黄色 | Yellow</item>
</string>
</resources>main.xml内容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/getColor"
/>
<Spinner android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:prompt="@string/colors"/>
</LinearLayout>
Activity文件如下:
package com.android.test;import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.Spinner;public class SpinnerActivity extends Activity {
/** Called when the activity is first created. */
private Spinner spinner;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
spinner=(Spinner)findViewById(R.id.spinner);
ArrayAdapter adapter=ArrayAdapter.createFromResource(this, R.string.colors,android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
spinner.setAdapter(adapter);
}
}
运行后抛出问题:
[2010-11-15 11:02:08 - ddmlib]確立された接続がホスト コンピュータのソウトウェアによって中止されました。
java.io.IOException: 確立された接続がホスト コンピュータのソウトウェアによって中止されました。
at sun.nio.ch.SocketDispatcher.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(Unknown Source)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(Unknown Source)
at sun.nio.ch.IOUtil.write(Unknown Source)
at sun.nio.ch.SocketChannelImpl.write(Unknown Source)
at com.android.ddmlib.JdwpPacket.writeAndConsume(JdwpPacket.java:213)
at com.android.ddmlib.Client.sendAndConsume(Client.java:573)
at com.android.ddmlib.HandleHeap.sendREAQ(HandleHeap.java:349)
at com.android.ddmlib.Client.requestAllocationStatus(Client.java:419)
at com.android.ddmlib.DeviceMonitor.createClient(DeviceMonitor.java:840)
at com.android.ddmlib.DeviceMonitor.openClient(DeviceMonitor.java:808)
at com.android.ddmlib.DeviceMonitor.processIncomingJdwpData(DeviceMonitor.java:767)
at com.android.ddmlib.DeviceMonitor.deviceClientMonitorLoop(DeviceMonitor.java:635)
at com.android.ddmlib.DeviceMonitor.access$100(DeviceMonitor.java:42)
at com.android.ddmlib.DeviceMonitor$3.run(DeviceMonitor.java:563)
<item>黑色 | Black</item>
<item>蓝色 | Blue</item>
<item>棕色 | Brown</item>
<item>绿色 | Green</item>
<item>灰色 | Grey</item>
<item>粉色 | Pink</item>
<item>紫色 | Purple</item>
<item>红色 | Red</item>
<item>白色 | White</item>
<item>黄色 | Yellow</item>
</string-array>[/code]
adapter=ArrayAdapter.createFromResource(this, R.array.colors,android.R.layout.simple_spinner_item);
放到array里
创建一个array。xml
然后<?xml version="1.0" encoding="utf-8"?><resources>
<string-array name="entry_up_time">
<item>@string/up_time_fast</item>
<item>@string/up_time_normal</item>
<item>@string/up_time_low</item>
</string-array>
</resources>
main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:padding="10dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:text="@string/getcolor">
</TextView>
<Spinner
android:id="@+id/spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:prompt="@array/colors">
</Spinner>
</LinearLayout>strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, MainHelloSpinnerActivity!</string>
<string name="app_name">MainHelloSpinner</string>
<string name="getcolor">选择色彩:</string>
<array name="colors">
<item>黑色 | Black</item>
<item>蓝色 | Blue</item>
<item>棕色 | Brown</item>
<item>绿色 | Green</item>
<item>灰色 | Grey</item>
<item>粉色 | Pink</item>
<item>紫色 | Purple</item>
<item>红色 | Red</item>
<item>白色 | White</item>
<item>黄色 | Yellow</item>
</array>
</resources>XXActivity.java:import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;public class MainHelloSpinnerActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); //找到Xml中定义的下拉列表
Spinner spinner = (Spinner)findViewById(R.id.spinner);
//准备一个数组适配器
ArrayAdapter<?> adapter = ArrayAdapter.createFromResource(
this, R.array.colors, android.R.layout.simple_spinner_item);
//设置下拉样式
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//为下拉列表设置适配器
spinner.setAdapter(adapter); //定义子元素选择监听器
OnItemSelectedListener oisl= new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(MainHelloSpinnerActivity.this,"选择的色彩: " +
parent.getItemAtPosition(position).toString(), Toast.LENGTH_LONG).show(); } public void onNothingSelected(AdapterView<?> parent) {
}
};
//为下拉列表绑定事件监听器
spinner.setOnItemSelectedListener(oisl);
}
}