Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在我的java文件中实现微调器?_Java_Android_Database_Spinner - Fatal编程技术网

如何在我的java文件中实现微调器?

如何在我的java文件中实现微调器?,java,android,database,spinner,Java,Android,Database,Spinner,我只是一个初学者,所以我有一个关于如何在联系人应用程序的java文件中实现微调器的具体问题。我已经看了一个关于联系人应用程序的教程,我想学习它。因此,我创建了一个字符串数组,其中包含3项。现在我的问题是如何将其实现到新联系人java文件的代码中(下面的代码)。它应该是布局中的下拉菜单。 我希望任何人都能帮助我。询问您是否需要更多信息 public class NewContact extends Activity{ Spinner typ; EditText firstNam

我只是一个初学者,所以我有一个关于如何在联系人应用程序的java文件中实现微调器的具体问题。我已经看了一个关于联系人应用程序的教程,我想学习它。因此,我创建了一个字符串数组,其中包含3项。现在我的问题是如何将其实现到新联系人java文件的代码中(下面的代码)。它应该是布局中的下拉菜单。 我希望任何人都能帮助我。询问您是否需要更多信息

 public class NewContact extends Activity{

    Spinner typ;
    EditText firstName;
    EditText lastName;
    EditText phoneNumber;
    EditText emailAddress;
    EditText address;
    EditText preference;
    EditText information;

    DBTools dbtools = new DBTools(this);

    @Override
    public void onCreate(Bundle savedInstanceState){

        super.onCreate(savedInstanceState);
        setContentView(R.layout.add_contact);

        typ = (EditText) findViewById(R.id.typ);
        firstName = (EditText) findViewById(R.id.firstName);
        lastName = (EditText) findViewById(R.id.lastName);
        phoneNumber = (EditText) findViewById(R.id.phoneNumber);
        emailAddress = (EditText) findViewById(R.id.emailAddress);
        address = (EditText) findViewById(R.id.address);
        preference = (EditText) findViewById(R.id.preference);
        information = (EditText) findViewById(R.id.information);

    }

    public void AddNewContact(View view){

        HashMap<String, String> queryValuesMap = new HashMap<String, String>();

        queryValuesMap.put("typ", typ.getText().toString());
        queryValuesMap.put("firstName", firstName.getText().toString());
        queryValuesMap.put("lastName", lastName.getText().toString());
        queryValuesMap.put("phoneNumber", phoneNumber.getText().toString());
        queryValuesMap.put("emailAddress", emailAddress.getText().toString());
        queryValuesMap.put("address", address.getText().toString());
        queryValuesMap.put("preference", preference.getText().toString());
        queryValuesMap.put("information", information.getText().toString());

        dbtools.insertContact(queryValuesMap);

        this.callMainActivity(view);

    }

    public void callMainActivity(View view){

        Intent theIntent = new Intent(getApplicationContext(),MainActivity.class);
        startActivity(theIntent);
        finish();
        startActivity(getIntent());
    }
}
public类NewContact扩展活动{
旋转器类型;
编辑文本名;
编辑文本姓氏;
编辑文本电话号码;
编辑文本电子邮件地址;
编辑文本地址;
编辑文本偏好;
编辑文本信息;
DBTools DBTools=新的DBTools(本);
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.add_contact);
typ=(EditText)findViewById(R.id.typ);
firstName=(EditText)findViewById(R.id.firstName);
lastName=(EditText)findViewById(R.id.lastName);
phoneNumber=(EditText)findViewById(R.id.phoneNumber);
emailAddress=(EditText)findViewById(R.id.emailAddress);
地址=(EditText)findViewById(R.id.address);
preference=(EditText)findViewById(R.id.preference);
信息=(EditText)findViewById(R.id.information);
}
public void AddNewContact(视图){
HashMap queryValuesMap=新HashMap();
queryValuesMap.put(“typ”,typ.getText().toString());
queryValuesMap.put(“firstName”,firstName.getText().toString());
queryValuesMap.put(“lastName”,lastName.getText().toString());
queryValuesMap.put(“phoneNumber”,phoneNumber.getText().toString());
queryValuesMap.put(“emailAddress”,emailAddress.getText().toString());
queryValuesMap.put(“address”,address.getText().toString());
queryValuesMap.put(“preference”,preference.getText().toString());
queryValuesMap.put(“信息”,information.getText().toString());
dbtools.insertContact(queryValuesMap);
此.callmain活动(视图);
}
公共void callmain活动(视图){
Intent theIntent=newintent(getApplicationContext(),MainActivity.class);
起始触觉(内容);
完成();
startActivity(getIntent());
}
}

假设您有一个字符串数组

<string-array name="country_arrays">
        <item>Malaysia</item>
        <item>United States</item>
        <item>Indonesia</item>
        <item>France</item>
        <item>Italy</item>
        <item>Singapore</item>
        <item>New Zealand</item>
        <item>India</item>
    </string-array>

好的,非常感谢!但现在我只有两个小问题: 1.如何更改微调器中项目的TextColor(我有3个不同的.java文件) 2.适配器和微调器代码必须在哪个位置实现,以便在MainActivity列表中获得与在NewContact布局中添加相同的选择。因为当我添加它时,它将显示在主屏幕列表中…如果我单击某个联系人,我将进入editContact布局,在那里我希望看到微调器的choosen项

`公共类MainActivity扩展了ListActivity{

Intent intent;
TextView KontaktID;

DBTools dbtools = new DBTools(this);

protected void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayList<HashMap<String, String>> KontaktList = dbtools.getAllKontakte();

if(KontaktList.size() !=0){

    ListView listView = getListView();
    listView.setOnItemClickListener(new OnItemClickListener(){

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {

            KontaktID = (TextView) view.findViewById(R.id.KontaktID);

            String KontaktIDValue = KontaktID.getText().toString();
            Intent theIntent = new Intent(getApplication(), EditContact.class);
            theIntent.putExtra("KontaktID", KontaktIDValue);
            startActivity(theIntent);
            }
    });


ListAdapter adapter = new SimpleAdapter(MainActivity.this, KontaktList, R.layout.contact_entry,
        new String[] {"KontaktID", "typ", "lastName", "firstName"},
        new int[]{R.id.KontaktID, R.id.typ, R.id.lastName, R.id.firstName});

setListAdapter(adapter);}}

public void OnItemClick (AdapterView<?> parent, View view, int position,
        long id){
Spinner typ;    
typ  = (Spinner) findViewById(R.id.typ);
String[] diff = getResources().getStringArray(R.array.diff);
ArrayAdapter <String> dataAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, diff);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
typ.setAdapter(dataAdapter);
 }



public void showAddContact(View view){

    Intent theIntent = new Intent(getApplicationContext(), NewContact.class);

    startActivity(theIntent);

}
意图;
TextView KontaktID;
DBTools DBTools=新的DBTools(本);
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayList KontaktList=dbtools.getAllKontakte();
如果(KontaktList.size()!=0){
ListView ListView=getListView();
setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父视图、视图、整型位置、,
长id){
KontaktID=(TextView)view.findViewById(R.id.KontaktID);
字符串KontaktIDValue=KontaktID.getText().toString();
Intent theIntent=newintent(getApplication(),EditContact.class);
内容putExtra(“KontaktID”,KontaktID值);
起始触觉(内容);
}
});
ListAdapter=new SimpleAdapter(MainActivity.this、KontaktList、R.layout.contact_条目,
新字符串[]{“KontaktID”、“typ”、“lastName”、“firstName”},
新的int[]{R.id.KontaktID,R.id.typ,R.id.lastName,R.id.firstName});
setListAdapter(适配器);}
public void OnItemClick(AdapterView父视图、视图、整型位置、,
长id){
旋转器类型;
typ=(微调器)findViewById(R.id.typ);
字符串[]diff=getResources().getStringArray(R.array.diff);
ArrayAdapter dataAdapter=新的ArrayAdapter(这个,android.R.layout.simple\u微调器\u项,diff);
dataAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉项);
典型setAdapter(数据适配器);
}
public void showAddContact(视图){
Intent theIntent=newintent(getApplicationContext(),NewContact.class);
起始触觉(内容);
}

}`

好的,非常感谢!但现在我只有两个小问题:1.如何更改微调器中项目的TextColor您可以在
dataAdapter.setDropDownViewResource(android.R.layout.simple\u spinner\u dropdown\u item)行中将行布局更改为您想要的任何内容
我建议您在sdk中找到
simple\u spinner\u dropdown\u item.xml
,并将其复制到您的项目中,并将其作为起点
spinner1 = (Spinner) findViewById(R.id.spinner1);

String[] country_array = getResources().getStringArray(R.array.country_arrays)
    ArrayAdapter dataAdapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item, country_array );
    dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(dataAdapter);
Intent intent;
TextView KontaktID;

DBTools dbtools = new DBTools(this);

protected void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayList<HashMap<String, String>> KontaktList = dbtools.getAllKontakte();

if(KontaktList.size() !=0){

    ListView listView = getListView();
    listView.setOnItemClickListener(new OnItemClickListener(){

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {

            KontaktID = (TextView) view.findViewById(R.id.KontaktID);

            String KontaktIDValue = KontaktID.getText().toString();
            Intent theIntent = new Intent(getApplication(), EditContact.class);
            theIntent.putExtra("KontaktID", KontaktIDValue);
            startActivity(theIntent);
            }
    });


ListAdapter adapter = new SimpleAdapter(MainActivity.this, KontaktList, R.layout.contact_entry,
        new String[] {"KontaktID", "typ", "lastName", "firstName"},
        new int[]{R.id.KontaktID, R.id.typ, R.id.lastName, R.id.firstName});

setListAdapter(adapter);}}

public void OnItemClick (AdapterView<?> parent, View view, int position,
        long id){
Spinner typ;    
typ  = (Spinner) findViewById(R.id.typ);
String[] diff = getResources().getStringArray(R.array.diff);
ArrayAdapter <String> dataAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, diff);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
typ.setAdapter(dataAdapter);
 }



public void showAddContact(View view){

    Intent theIntent = new Intent(getApplicationContext(), NewContact.class);

    startActivity(theIntent);

}