データ入力ダイナミックアレイのリストにどのように追加しますか?そのデータはどのようにWebサービスに送信されますか?たとえば、フォームを4回追加したいとします。どのように私はそのような解決策を扱うのですか?アンドロイドにEdittextを配列で追加するには?
例: -
データ入力ダイナミックアレイのリストにどのように追加しますか?そのデータはどのようにWebサービスに送信されますか?たとえば、フォームを4回追加したいとします。どのように私はそのような解決策を扱うのですか?アンドロイドにEdittextを配列で追加するには?
例: -
私はandroid:orientation="vertical"
とLinearLayout
をとっているように任意のレイアウトにのEditTextを動的に追加するためのコードの下に使用することができます。
ダイナミックビューを追加する方法を説明するためにテストアクティビティを作成しました。また、暗黙のうちにEditText
にアクセスしたい場合は、逆順にコードする必要があります。子ビューをLinearLayout
から取得し、 LinearLayout
に追加されたループ位置だけのIDを持つスイッチケース。ダイナミックから入力配列を得るための方法以下
のtest.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mParentLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@android:color/transparent"
android:fitsSystemWindows="true">
</LinearLayout>
TestActivity.java
package com.cj.myapplication;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.EditText;
import android.widget.LinearLayout;
/**
* Created by CHETAN JOSHI on 1/31/2017.
*/
public class TestActivity extends AppCompatActivity{
LinearLayout mParentLayout;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
mParentLayout = (LinearLayout)findViewById(R.id.mParentLayout);
String [] myList = new String[]{"masukan jenis kursus","Tambah jenis kursus",
"masukan jenis kursus","masukan jenis kursus","Tambah jenis kursus"};
addEditTextDynamically(mParentLayout,myList);
}
private void addEditTextDynamically(LinearLayout mParentLayout,String [] myList){
for (int i=0;i<myList.length;i++){
EditText myEditText = new EditText(mParentLayout.getContext()); //Context
myEditText.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
myEditText.setId(i);
myEditText.setTag(myList[i]);
mParentLayout.addView(myEditText);
}
}
}
使用はEditText
を追加しました。
private String[] getInputArrayFromEditTexts(LinearLayout mParentLayout){
String[] inputArray = new String [mParentLayout.getChildCount()];
for (int i = 0; i <inputArray.length ; i++) {
EditText editText =(EditText) mParentLayout.getChildAt(i);
inputArray[i] = editText.getText().toString();
}
return inputArray;
}
あなたが動的にエディットテキストを追加し、タグからエディットテキストIDをベースにすることができます。あなたが生成する必要がどのように多くのエディットテキストに応じて、ループ、onclickのイベントやなどを使用することができます
EditText myEditText = new EditText(context); //Context
myEditText.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
myEditText.setTag("edittext_hello");
myLayout.addView(myEditText);
設定方法ループ内のテキストを編集しますか? –
参照用にループするときに文字列タグに整数を追加します。たとえば、ループの進行中にedittext_1 edittext_2などがあるとします。 – Mike
どのようにEditText可変形状の配列からデータを取得するのですか? –
「Tambah jenis kursus」と「Hapus Jenis kursus」はボタンで、「Masukan jenis kursus」はEditTextです –
データをWebサービスに送信する方法を教えてください。私が彼女を作ったWebサービスはデータ配列の形を取ります。例:データを送信するparams.put( "jns_krsus"、** ???????? **); Webサービスの例$ jum_jeniskursus = count($ this-> input-> post( 'jns_krsus')); => $ this-> input-> post( 'jns_krsus')[$ jeris_kursus] => $ this-> input-> post( 'jns_kr' => $ a) a]); $ query2 = $ this-> ijin_m-> simpandatajeniskursus_ipk( 'm_ipk_jeniskursus'、$ querydata2); } –
入力値で文字列[]が必要ですか? –