2017-11-03 15 views
0

EditTextで動的表の行を作成する方法。「追加」ボタンをクリックして行を追加し、「削除」ボタンをクリックして行を削除できます。編集テキスト付きのAndroid動的表の行

enter image description here

+0

これは一部のHTMLを使用すると、WebViewを使用しなかったように見えますかネイティブのアンドロイドのUIで作業しますか? –

+0

ネイティブAndroid UI –

+0

「カスタムリストビュー」または「RecyclerView」を検索します。 –

答えて

0

あなたがarrayadapterを使用してリストビューを実装する必要があります。追加ボタンでは、アダプタに新しい行を追加し、notifyDataSetChanged()を呼び出して配列アダプタを更新する必要があります。リストビューも更新してください。これはあなたがこれを達成する方法です。

0

新しいテーブル行を作成するには、動的プロシージャを使用する必要があります。

私はframeLayoutを使用します。 これは(あなたがあなたのプロジェクトに適応しなければならない - 位置について)新しいイメージを作成するための例です:

TextView TEXTVIEW = new TextView(this); 
     int ID_FOR_DINAMIC_TEXTVIEW = 10000 + i ; 
     TEXTVIEW.setId(ID_FOR_DINAMIC_TEXTVIEW); 
     TEXTVIEW.setTextColor(Color.BLACK); 
     TEXTVIEW.setTextSize(TypedValue.COMPLEX_UNIT_SP, 22); 
     TEXTVIEW.setText(content_); 
     TEXTVIEW.setX(EKRAN.WIDTH()/100 * 9); 
     TEXTVIEW.setY(EKRAN.HEIGHT()/10 + EKRAN.HEIGHT()/100 * 4 * i); 
     xml_layout.addView(TEXTVIEW); 

     // Toast.makeText(context_ , "GOOD" , Toast.LENGTH_SHORT).show(); 

ボーナス:位置について クラス:

// def : SCREEN EKRAN = new SCREEN(context_); 

//############################################## 
// SCREEN - EKRAN CLASS 
//############################################## 
public class SCREEN { 

    DisplayMetrics dm = new DisplayMetrics(); 
    Point size_ = new Point(); 
    int width; 
    int height; 

    SCREEN (Context CONTEXT_) { 

     dm = CONTEXT_.getResources().getDisplayMetrics(); 
     int densityDpi = dm.densityDpi; 
     height = dm.heightPixels; 
     width = dm.widthPixels; 

    } 

    public int WIDTH() { 

     return width; 

    } 
    public int HEIGHT(){ 

     return height; 

    } 
    public int W(int PER_){ 

     return width/100*PER_; 

    } 
    public int H(int PER_ ){ 


     return height/100*PER_; 

    } 

    ////////////////// 
    //extras 
    ///////////////// 
    public int GET_PIX_FROM_DP (float DP_VALUE) 
    { 
     return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, DP_VALUE , dm); 
    } 

    public int GET_PIX_FROM_DP2 (float DP_VALUE) 
    { 
     float res = DP_VALUE * (dm.ydpi/160f); 
     return (int) res; 
    } 



} 
関連する問題