2017-01-31 10 views
-1

editTextを、既に存在する2つの間に、editTextsをプログラムで追加すると、アンドロイドのbuttonがクリックされます。私はこれが可能かどうか疑問に思っています。私は関連する質問を見つけることができませんでしたか?2つの要素の間に要素を追加する方法

+0

チェックアウト:http://stackoverflow.com/questions/20260126/relativelayout-insert-a-view-between-two-others。他のビューグループ(LinearLayout.LayoutParamsなど)にLayoutParamsを使用できます。 – Tudor

+0

あなたはどのレイアウトを使用していますか? –

+0

_これが可能かどうか疑問に思っています_これはレイアウトクラスのドキュメントにあります。何も試していない場合は、可能であるかどうかを示す外部リソース(ドキュメンテーション)を見つけるように単に要求しています。これはトピックではありません。 – AxelH

答えて

0

実行時要素の追加で何をしたいですか?目的は何ですか?特定のアクションの要素を表示/非表示にするには不十分でしょうか?

私はあなたがXMLで(それが見えなくなりますが、また、レイアウト上のスペースを使用しません)、それがなくなって行うことができます意味:のonCreate()メソッドで

android:visibility="gone" 

またはJavaコードでは:

specificElement.setVisibility(View.GONE) 

その後、あなたは通常、あなたがいうだけで目に見えるに可視性を設定する要素を追加します。

​​

何ABOそれ?

+0

実際には完璧に動作します。私は、より多くの要素を手動で作成しなければならないという点で時間を節約しようとしていました。 – BBill

0

2番目の位置に3番目のEditTextを追加できます。

まずは、親のレイアウトの参照をしてはいけません。

あなたが行っている場合:

parent.addView(editText1); 
parent.addView(editText2); 

をだから今、あなたの親が2つのつの子景色を眺めることができます。今

は、このような操作を行う第三のEditTextすなわち editText3を追加します。あなたの第三のEditTextが2位になります。このよう

parent.addView(editText3, 1);// addView(<childview>, <index>); 

を。

0
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams)yourEditBox.getLayoutParams(); 
params.addRule(RelativeLayout.LEFT_OF, R.id.id_to_be_left_of); 
params.addRule(RelativeLayout.RIGHT_OF, R.id.id_to_be_right_of); 

yourEditBox.setLayoutParams(params); 

上記のコードを使用して、編集ボックスを別の2つの編集ボックスの間に追加して整列させます。

0

public class MainActivity extends AppCompatActivity { 
@Override 
protected void onCreate(@Nullable Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    LinearLayout linearLayout = (LinearLayout) getLayoutInflater().inflate(R.layout.activity_main, null); 
    setContentView(linearLayout); 
    EditText editText = new EditText(getBaseContext()); 
    editText.setHint("Programmatically Added EditText"); 
    linearLayout.addView(editText, 1); 
}} 

Activityクラス内のレイアウトファイルの構造

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

    <EditText 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:hint="EditText 1" /> 

    <EditText 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:hint="EditText 2" /> 

</LinearLayout> 

・ホープ、このことができます。乾杯!

0

xmlファイルの2つの間にこのeditTextを追加するだけで、xmlのcontrole可視性とボタンをクリックした瞬間です。 XMLファイルに

:あなたが実際に欲しいものに依存してしまったり、不可視に設定可視性: アンドロイド:それは表示されませんが、あなたのビューで アンドロイドを場所を取るために起こって視界=「見えません」:視界は=それは表示されません「行って」と、それはあなたのコードで

あなたのビューで行われていない:

yourButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      yourButton.setVisibility(View.VISIBLE); 

});

関連する問題