动态地将Spinner添加到RelativeLayout

时间:2014-10-07 22:08:44

标签: java android spinner relativelayout

我正在尝试将一个微调器动态添加到RelativeLayout但我遇到了问题。 这是我的代码。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
 xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/Relativ"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

</RelativeLayout>

在我班上:

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    RelativeLayout rl = (RelativeLayout) findViewById(R.id.Relativ);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,1);
    adapter.add("1");
    adapter.add("2");
    adapter.add("3");
    adapter.add("4");
    adapter.add("5");

    Spinner list = new Spinner(this);
    list.setAdapter(adapter);
    rl.addView(list);
    }

但它没有运行。我想知道我的代码有什么问题以及如何解决它。 我在RelativeLayout.addView中尝试使用RelativeLayout参数并且它没有运行。 谢谢。

2 个答案:

答案 0 :(得分:1)

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    RelativeLayout rl = new RelativeLayout(this);
    ArrayList<String> arrayList = new ArrayList<String>();
    arrayList.add("1");
    arrayList.add("2");
    arrayList.add("3");
    arrayList.add("4");
    arrayList.add("5");

    Spinner list = new Spinner(this);
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_dropdown_item, arrayList);
    list.setAdapter(adapter);
    rl.addView(list);
    setContentView(rl);
}

答案 1 :(得分:0)

<强> main.java

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item);

        adapter.add("1");
        adapter.add("2");
        adapter.add("3");
        adapter.add("4");
        adapter.add("5");

        final Spinner list= (Spinner) findViewById(R.id.spinner1);

        list.setAdapter(adapter);
    }

<强> main.xml中

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.prova.MainActivity" >

    <Spinner
        android:id="@+id/spinner1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="28dp" />

</RelativeLayout>

检查您的参数。