2012-08-03 73 views
0

在我的應用程序有disappearence顯示一些3 EditText上的看法和3個TEX tviews,基於某些條件(即),如果滿足一定條件下本應顯示,否則它應該not.I有這個textviews在XML file.How我能實現this..Thanks提前:TextView的appearence和Android的

我的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="fill_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Item" 
     android:layout_marginLeft="10dp"/> 

    <EditText 
     android:id="@+id/itemedit" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" > 

     <requestFocus /> 
    </EditText> 

    <TextView 
     android:id="@+id/textView2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Price" 
     android:layout_marginLeft="10dp"/> 

    <EditText 
     android:id="@+id/priceedit" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:numeric="decimal"/> 

    <LinearLayout         
      android:orientation="horizontal"   
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"> 

      <TextView        -------->TExtview1 

     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"  
     android:text="Type" 
     android:layout_marginLeft="10dp"/>   
      <TextView        --------->TExtview2 

     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1"  
     android:gravity="center_horizontal" 
     android:text="Recurrence" 
     />   

      <TextView        --------->TExtview3 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:gravity="right"  
     android:text="Start Date" 
     />   

     </LinearLayout> 

     <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     > 

     <EditText          --------->edittext1 
     android:id="@+id/recccatedit" 
     android:layout_width="110dp" 
     android:layout_height="wrap_content" 

     /> 

     <EditText          --------->edittext2 
     android:id="@+id/reccedit" 
     android:layout_width="80dp" 
     android:layout_height="wrap_content" 

     android:numeric="decimal" 
     /> 

    <EditText            --------->edittext1 
     android:id="@+id/reccdateedit" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:layout_gravity="right" 
/> 
    </LinearLayout> 


      <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="10dp"> 

       <Button 
     android:id="@+id/button2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Back" /> 

    <Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Save" /> 

    <Button 
     android:id="@+id/btndelete" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Delete" /> 


     </LinearLayout> 

</LinearLayout> 

我的Java類文件:

if(!reccinc.equals("0")) 
      { 
       System.out.println("Inside if"); 
      EditText rec=(EditText)findViewById(R.id.reccedit); 
      EditText reccdate=(EditText)findViewById(R.id.reccdateedit); 
      EditText recctype=(EditText)findViewById(R.id.recccatedit); 

      String recc=null; 
      String date=null; 
      String type=null; 
      db.open();    
      if(!intent.getStringExtra("Recc").equals("0")) 
      { 
       Cursor c= db.getReccurenceCount(intent.getStringExtra("Recc"));  
       startManagingCursor(c); 
       recc=c.getString(c.getColumnIndex("increment")); 
       date=c.getString(c.getColumnIndex("startdate")); 
       type=c.getString(c.getColumnIndex("recurrencetype")); 
      } 

      rec.setText(recc); 
      recctype.setText(type); 
      reccdate.setText(date); 
      } 
+0

埃裏克我張貼only..I檢查了條件display..But我搜索的淨但是我找不到任何相關的答案。所以我有一個混亂,我必須在代碼部分做到這一點,不可能通過XML ..這張貼在這裏張貼... – 2012-08-03 04:54:06

回答

2

您可以撥打

view.setVisibility(View.GONE); 

使視圖從佈局中消失。您可以撥打

view.setVisibility(View.VISIBLE); 

將其重新帶回(假設它尚未從佈局中刪除)。

0

當你想顯示他們在特定的條件只是讓你的父母佈局的知名度最初的android:知名度=「水漲船高」,如果條件滿足,然後作出這樣的佈局知名度,真正的編程方式,這樣將顯示,當你想,你可以通過將可見性設置消失來隱藏完整的佈局。

或者,如果你想添加特定的EditText TextView的或再加入,並從活動程序刪除它們。

您可以按以下方式

initiallly以XML爲您的EditText做設置它們的知名度=在你的代碼「水漲船高」

在特定的條件下即

if(!reccinc.equals("0")) 
      { 
       System.out.println("Inside if"); 
       EditText rec=(EditText)findViewById(R.id.reccedit); 
       EditText reccdate=(EditText)findViewById(R.id.reccdateedit); 
       EditText recctype=(EditText)findViewById(R.id.recccatedit); 

       after finding them.. 
       rec.setVisibity(View.visible); 
       recdate.setVisibity(View.visible); 
       rectype.setVisibity(View.visible); 

     and rest of logic goes here.. 

希望這個解釋適用於您...

0

你必須給IDS你textviews

<TextView        
    android:layout_id="@+id/text" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:gravity="right"  
    android:text="Start Date" 
    /> 

然後取出,在Java文件

TextView textview =(TextView)findViewById(R.id.text); 

,然後在條件做

textview.setVisibility(View.INVISIBLE); 
textview.setVisibility(View.VISIBLE); 

飄將刪除你的看法佈局空間

textview.setVisibility(View.GONE); 
0

<TextView 
    android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Item" 
    android:layout_marginLeft="10dp"/> 

<EditText 
    android:id="@+id/itemedit" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <requestFocus /> 
</EditText> 

<TextView 
    android:id="@+id/textView2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Price" 
    android:layout_marginLeft="10dp"/> 

<EditText 
    android:id="@+id/priceedit" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:numeric="decimal"/> 

,你可以有LinearLayout中作爲linearlayout1一個ID,並設置可見性爲不可見

<LinearLayout   
     android:id=""@+id/linearLayout1"    
     android:orientation="horizontal"   
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
     android:visibility="invisible"> 

     <TextView        -------->TExtview1 

    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"  
    android:text="Type" 
    android:layout_marginLeft="10dp"/>   
     <TextView        --------->TExtview2 

    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_weight="1"  
    android:gravity="center_horizontal" 
    android:text="Recurrence" 
    />   

     <TextView        --------->TExtview3 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:gravity="right"  
    android:text="Start Date" 
    />   

    </LinearLayout> 

,你可以有LinearLayout中作爲linearlayout2一個ID,並設置可見性爲不可見

<LinearLayout 
    android:id="@+id/linearLayout2" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
     android:visibility=""invisible" 
    > 

    <EditText          --------->edittext1 
    android:id="@+id/recccatedit" 
    android:layout_width="110dp" 
    android:layout_height="wrap_content" 

    /> 

    <EditText          --------->edittext2 
    android:id="@+id/reccedit" 
    android:layout_width="80dp" 
    android:layout_height="wrap_content" 

    android:numeric="decimal" 
    /> 

<EditText            --------->edittext1 
    android:id="@+id/reccdateedit" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:layout_gravity="right" 

/>

 <LinearLayout 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="10dp"> 

      <Button 
    android:id="@+id/button2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:text="Back" /> 

<Button 
    android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:text="Save" /> 

<Button 
    android:id="@+id/btndelete" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:text="Delete" /> 


    </LinearLayout> 

你的java文件

我的Java類文件:

if(!reccinc.equals("0")) 
      { 
       linearLayout1.setVisibility(View.VISIBLE); 
       System.out.println("Inside if"); 
      EditText rec=(EditText)findViewById(R.id.reccedit); 
      EditText reccdate=(EditText)findViewById(R.id.reccdateedit); 
      EditText recctype=(EditText)findViewById(R.id.recccatedit); 

      String recc=null; 
      String date=null; 
      String type=null; 
      db.open();    
      if(!intent.getStringExtra("Recc").equals("0")) 
      { 
        linearLayout.setVisibility(VIEW.VISIBLE); 

       Cursor c= db.getReccurenceCount(intent.getStringExtra("Recc"));  
       startManagingCursor(c); 
       recc=c.getString(c.getColumnIndex("increment")); 
       date=c.getString(c.getColumnIndex("startdate")); 
       type=c.getString(c.getColumnIndex("recurrencetype")); 
      } 

      rec.setText(recc); 
      recctype.setText(type); 
      reccdate.setText(date); 
      }