简体   繁体   中英

How to add Edittext and Spinner when I clicked on Add button in java code?

package com.nyurals.school;



import android.annotation.SuppressLint;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.NavUtils;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;

public class SettingsActitivity extends Activity {

    @SuppressLint("NewApi")
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        setContentView(R.layout.activity_settings );

        ActionBar actionBar = getActionBar();
        actionBar.show();
        actionBar.setTitle("SETTINGS");

        int titleId = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");
        TextView textView = (TextView)findViewById(titleId);
    //  textView.setText("ANNOUNCEMENTS");
        textView.setTextColor(android.graphics.Color.BLUE);

        actionBar.setDisplayHomeAsUpEnabled(true);

        init();
        super.onCreate(savedInstanceState);
    }

    private void init() {

        //textParentName = (TextView) findViewById(R.)
        String[] items = { "Nursery", "KG-I", "KG-II", "I", "II",
                "III", "IV", "V" };
        Spinner spinnerForClass = (Spinner) findViewById(R.id.spinnerClass);
        //      spinnerForClass.setOnItemSelectedListener(this);

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

        spinnerForClass.setAdapter(spinnerClass);
    }

    public void addChildren(View view) {


        Toast.makeText(SettingsActitivity.this, "Clicked on Add", Toast.LENGTH_SHORT).show();


    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater menuInflater = getMenuInflater();
        menuInflater.inflate(R.menu.menu_settings, menu);

        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {

        switch(item.getItemId()){
        case R.id.item_save:
            Toast.makeText(SettingsActitivity.this, "Details saved.. Thank You!!", Toast.LENGTH_SHORT).show();
            return true;
        case android.R.id.home:
            NavUtils.navigateUpFromSameTask(this);
            return true;

        default:
            return false;

        }

    }



}

In above code in add Children method, What should I write to add child again???? ie How to add Edit Text and Spinner like it is already present there which came from XML.. please suggest any solution...

if you have Spinner and EditText in xml already and want to add again by probgrammatically then first remove all views from your parent layout..

like:

  parentlayout.removeAllViews();

and after that create object for Spinner and EditText and add to parent layout

  EditText edt= new EditText(this);
  Spinner sp= new Spinner(this);
  parentlayout.addView(edt);
  parentlayout.addView(sp);

Try this:

EditText myEdtTxt = new EditText(this);
myLayout.addView(myEdtTxt);

Spinner spinner = new Spinner(this);
myLayout.addView(spinner);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM