Gå til innhold

Problem med å hente ut data fra EditText i AlertDialog


Anbefalte innlegg

Hei,

 

Lager en applikasjon hvor brukeren bl.a. skal taste inn IP-adresse og portnummer. Slik jeg tenker det så skal det komme opp en AlertDialog hvor brukeren skal taste inn data.

 

Jeg prøver å gjøre det på følgende måte etter råd fra http://www.questionhub.com/StackOverflow/3426917 :

 

   	FrameLayout f1 = new FrameLayout(this);
   	f1 = (FrameLayout) findViewById(android.R.id.custom);
   	LayoutInflater factory = LayoutInflater.from(this);
   	View settingsView= factory.inflate(R.layout.settings_entry, null);
   	f1.addView(settingsView);

   	IP_Addr_Edit = (EditText) settingsView.findViewById(R.id.ip_addr_edit);
   	Port_Number_Edit = (EditText) settingsView.findViewById(R.id.port_number_edit);

   	AlertDialog dialog = new AlertDialog.Builder(this).create();
   	dialog.setTitle("Settings");
   	dialog.setView(settingsView);
   	dialog.setButton("OK", new DialogInterface.OnClickListener() {

   		public void onClick(DialogInterface dialog, int which) {
   			setHostIPAddress(IP_Addr_Edit.getText().toString());
   			setPortNumber(Integer.valueOf(Port_Number_Edit.getText().toString()));
   		}
   	});

   	//IP_Addr_Edit.setText(hostIPAddress,TextView.BufferType.EDITABLE);
   	//Port_Number_Edit.setText(portNumber,TextView.BufferType.EDITABLE);

   	dialog.show();

 

Problemet er at jeg får nullpointer ved linjen "f1.addView(settingsView)". Noen som ser hvorfor, eventuelt har andre forslag til hvordan jeg kan få dette til?

 

settings_entry.xml:

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:orientation="vertical">

   <TextView 
       android:id="@+id/ip_addr_view"
       android:layout_height="wrap_content"
       android:layout_width="wrap_content"
       android:layout_marginLeft="20dip"
       android:layout_marginRight="20dip"
       android:text="IP Address:"
       android:gravity="left"
       android:textAppearance="?android:attr/textAppearanceMedium" />

   <EditText
       android:id="@+id/ip_addr_edit"
       android:layout_height="wrap_content"
       android:layout_width="fill_parent"
       android:layout_marginLeft="20dip"
       android:layout_marginRight="20dip"
       android:scrollHorizontally="true"
       android:autoText="false"
       android:capitalize="none"
       android:gravity="fill_horizontal"
       android:maxLength="15"
       android:inputType="phone"
       android:textAppearance="?android:attr/textAppearanceMedium" />

   <TextView
       android:id="@+id/port_number_view"
       android:layout_height="wrap_content"
       android:layout_width="wrap_content"
       android:layout_marginLeft="20dip"
       android:layout_marginRight="20dip"
       android:text="Port Number:"
       android:gravity="left"
       android:textAppearance="?android:attr/textAppearanceMedium" />

   <EditText
       android:id="@+id/port_number_edit"
       android:layout_height="wrap_content"
       android:layout_width="fill_parent"
       android:layout_marginLeft="20dip"
       android:layout_marginRight="20dip"
       android:scrollHorizontally="true"
       android:inputType="number"
       android:maxLength="5"
       android:autoText="false"
       android:capitalize="none"
       android:gravity="fill_horizontal"
       android:textAppearance="?android:attr/textAppearanceMedium" />

</LinearLayout>

 

Takker for hjelp.

Endret av The Hoff
Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...