2012-07-13 120 views
0

我想要做的是添加創建一個應用程序,找到一些本地業務。所以我正在做的活動顯示了商業信息。有些企業在城市有幾家商店,有些則只有一家。所以這裏是我的問題:在視圖中我有所有元素的滾動視圖,以及滾動視圖內的線性佈局。如果商家有多個商店,我會將每個商店信息添加到新的文本視圖中,並將文本視圖添加到佈局(這完全由代碼完成)。但目前顯示的佈局,它只顯示我一個商店,而不是顯示我3或4.我做錯了什麼?下面是該方法setupViews(),這是一個在顯示的chanrge:LinearLayout不顯示項目

private void setupViews() throws SQLException { 
     ImageView iv = (ImageView) findViewById(R.id.negocio_logo); 
     try { 
      iv.setImageBitmap(BitmapFactory.decodeByteArray(toShow.getImgSrc(), 
        0, toShow.getImgSrc().length)); 
     } catch (NullPointerException npe) { 
      iv.setBackgroundColor(Color.WHITE); 
     } 
     TextView nombreEmpresa = (TextView) findViewById(R.id.nombre_empresa); 
     nombreEmpresa.setText(toShow.getNombre()); 
     TextView descripcionEmpresa = (TextView) findViewById(R.id.descripcion_empresa); 
     descripcionEmpresa.setText(toShow.getDescripcion()); 
     TextView direccionEmpresa = (TextView) findViewById(R.id.direccion_empresa); 
     direccionEmpresa.setText(toShow.getDireccion()); 

     LinearLayout rl = (LinearLayout) findViewById(R.id.linear_layout_si); 
     TextView suc = (TextView) findViewById(R.id.sucursales_empresa); 
     sucursalDAO sDAO = new sucursalDAO(); 
     boolean tieneSucursales = sDAO.hasSucursales(toShow.getId()); 
     if (tieneSucursales == false) { 
      suc.setVisibility(View.GONE); 
      // sucs.setVisibility(View.GONE); 

     } else { 
      suc.setVisibility(View.VISIBLE); 

      ArrayList<String> sucursales = sDAO.getStringSucursales(toShow 
        .getId()); 
      ArrayList<TextView> tvs = new ArrayList<TextView>(); 
      for (int i = 0; i < sucursales.size(); i++) { 
       TextView tv = new TextView(this); 
       tv.setText(sucursales.get(i)); 
       tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
         LayoutParams.WRAP_CONTENT)); 
       tvs.add(tv); 
      } 
      for (int i = 0; i < tvs.size(); i++) { 
       rl.addView(tvs.get(i), i); 


      } 

     } 

    } 

,這裏是我的觀點的XML:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/RL" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/White" 
    android:orientation="vertical" > 

    <ScrollView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/widgetscroll" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" > 

     <RelativeLayout 
      xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@color/White" 
      android:orientation="vertical" > 

      <ImageView 
       android:id="@+id/negocio_logo" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_centerHorizontal="true" 
       android:contentDescription="@string/logo_negocio" /> 

      <TextView 
       android:id="@+id/datos_empresa" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/negocio_logo" 
       android:background="@drawable/barra" 
       android:text="@string/datos_empresa" 
       android:textColor="@color/White" /> 

      <TextView 
       android:id="@+id/nombre_empresa" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/datos_empresa" 
       android:text="@string/testing" /> 

      <TextView 
       android:id="@+id/descripcion_empresa" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/nombre_empresa" 
       android:text="@string/testing" /> 

      <TextView 
       android:id="@+id/direccion_empresa" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/descripcion_empresa" 
       android:text="@string/testing" /> 

      <TextView 
       android:id="@+id/sucursales_empresa" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/direccion_empresa" 
       android:background="@drawable/barra" 
       android:text="@string/sucursales" 
       android:visibility="gone" /> 

      <LinearLayout 
       android:id="@+id/linear_layout_si" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/sucursales_empresa" > 
      </LinearLayout> 

      <TextView 
       android:id="@+id/contacto_empresa" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/linear_layout_si" 
       android:text="@string/testing" /> 

     </RelativeLayout> 
    </ScrollView> 

</RelativeLayout> 

回答

3

我想你忘了在LinearLayout上設置方向,它顯示水平線

+0

是的,就是這樣!謝謝! – CarlosT 2012-07-13 22:23:37

+0

de nada;)那個變量名聽起來很熟悉。 – Litus 2012-07-13 22:25:29

1

我敢打賭,你忘了設定的orientationLinearLayout

+1

是的,就是這樣,謝謝! – CarlosT 2012-07-13 22:23:30