2016-09-14 14 views
0

私はLinearLayout.AddViewを使用して簡単なビューを追加しています。c#androidリニアレイアウトにカスタムビューを追加する

私はtextViewsやeditTextsのようなものを追加できますが、いくつかのパラメータを持つブロックに4つの要素をまとめて追加する必要があります。

これは動的に追加するブロックです。

Here is the block

それは4つのレイアウトのブロックだ、水平大きなものは、縦1、2点の右水平位置を左。

Layouts

そして、ここでこの

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@android:color/holo_blue_light" 
    android:minWidth="25px" 
    android:minHeight="25px"> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="88.0dp" 
     android:id="@+id/linearLayout1" 
     android:minWidth="25px" 
     android:minHeight="25px" 
     android:weightSum="100"> 
     <LinearLayout 
      android:orientation="vertical" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:id="@+id/linearLayout2" 
      android:layout_weight="60"> 
      <EditText 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:id="@+id/editText1" 
       android:hint="Servizio" /> 
      <EditText 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:id="@+id/editText2" 
       android:hint="Descrizione" /> 
     </LinearLayout> 
     <LinearLayout 
      android:orientation="horizontal" 
      android:minWidth="25px" 
      android:minHeight="25px" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:id="@+id/linearLayout3" 
      android:layout_weight="20" 
      android:layout_gravity="center_vertical"> 
      <EditText 
       android:inputType="number" 
       android:layout_width="32.5dp" 
       android:layout_height="wrap_content" 
       android:id="@+id/editText3" 
       android:layout_gravity="center_vertical" /> 
      <TextView 
       android:text="€" 
       android:textAppearance="?android:attr/textAppearanceSmall" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/textView1" 
       android:layout_gravity="center_vertical" /> 
     </LinearLayout> 
     <LinearLayout 
      android:orientation="horizontal" 
      android:minWidth="25px" 
      android:minHeight="25px" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:id="@+id/linearLayout4" 
      android:weightSum="10" 
      android:layout_weight="20"> 
      <EditText 
       android:inputType="number" 
       android:layout_width="32.5dp" 
       android:layout_height="wrap_content" 
       android:id="@+id/editText4" 
       android:layout_gravity="center_vertical" /> 
      <TextView 
       android:text="€" 
       android:textAppearance="?android:attr/textAppearanceSmall" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/textView1" 
       android:layout_gravity="center_vertical" /> 
     </LinearLayout> 
    </LinearLayout> 
</LinearLayout> 

ためAXMLですし、私は、この追加要素一つ一つのようなものを達成することはできません想像することができます。また、ユーザーが望むたびに、これらのブロックを繰り返して追加することができます。

もし私が動的にこのブロックを追加することができたとしても、私はどのようにすべてのフィールドで情報を取得するのでしょうか?

おかげ

答えて

1

アクションは、(ボタンのクリックを言う)に加えを引き起こす行っレイアウトを膨らませると、親に追加されたときに、動的にビューを追加します。

例:

button.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      LayoutInflater layoutInflater = LayoutInflater.from(context); 
      View view = layoutInflater.inflate(R.layout.layout_file, rootView); 

      linearLayout.addView(view); 
     } 
}); 

あなたはこれらのテキストフィールドの全てに入力にアクセスできるようにしたいしかし、私はあなたが提供してきたレイアウトを使用するカスタムビューを追加することをお勧めしたいです。これにより、EditTexts入力にアクセスできます。それらをListに格納するか、後でLinearLayoutの子を通して反復処理します。

+0

Beier、ありがとう、私は今、自分のAXMLレイアウトを追加することができますが、1回だけです。ちなみに、私は第2部に興味があります。私はカスタムビューを追加しようとします(たとえ今これが何を意味するのか分からなくても勉強します)。そして、どうすればそれらを保管することができますか? – Raikoug

+0

実際にカスタムビューについてのC#のドキュメントはありませんか?私は何もすることはできません... – Raikoug

関連する問題