1

ここに画像の説明を入力してください

データベースからのクエリ結果があり、対応する変数が入力されています。問題はレイアウトにあると思います。XMLファイルで間違ったレイアウトを使用しています。多分それはArrayAdapter、私にはわかりません。私はこの問題を解決するために多くの時間を費やしましたが、解決できませんでした。ご協力いただきありがとうございます!

これは私のXMLです:

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<TableRow>        
    <TextView android:id="@+id/precio_offers_charger"            
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:textStyle="bold"
        android:textSize="20px"     
        android:textColor="#FFFFFF"        
        android:background="#FF0000" />

    <TextView android:id="@+id/cabecera_offers_charger"
        android:paddingLeft="10px"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textStyle="bold"
        android:textSize="18px"
        android:textColor="#FFFFFF"
        android:background="#010201" />                 
</TableRow>  

<TableRow>
    <ImageView android:id="@+id/imagen"        
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TextView android:id="@+id/descripcion_offers_charger"
        android:paddingLeft="10px"
        android:paddingTop="10px"           
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:textStyle="normal"
        android:textSize="14px" />                                      
</TableRow>     

<ListView android:id="@android:id/list"        
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >
</ListView>

</TableLayout>

これは私のクラスの一部です:

public class OffersChargerActivity extends ListActivity{                    

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);     
    setContentView(R.layout.offers_charger);

... 


public class AdaptadorTitulares extends ArrayAdapter<Oferta> {

    Activity context;

    AdaptadorTitulares(Activity context) {
        super(context, R.layout.offers_charger, ofertas);
        this.context = context;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = convertView;
        if (view == null) {
            LayoutInflater linflater = (LayoutInflater)   getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            view = linflater.inflate(R.layout.offers_charger, null);
        }                   

        // poblamos la lista de elementos           
        TextView precio = (TextView)view.findViewById(R.id.precio_offers_charger);
        precio.setText(ofertas.get(position).getPrecio().concat("€"));

        ImageView imagen = (ImageView) view.findViewById(R.id.imagen);
        imagen.setImageBitmap(new GetImages().downloadFile(ofertas.get(position).getImagen()));

        TextView cabecera = (TextView)view.findViewById(R.id.cabecera_offers_charger);
        cabecera.setText(ofertas.get(position).getCabecera());

        TextView descripcion = (TextView)view.findViewById(R.id.descripcion_offers_charger);
        descripcion.setText(ofertas.get(position).getDescripcion());                                                

        return view;
    }                       
}   

...

}

4

2 に答える 2

2

これは私のために働いた:

   <TextView
        android:id="@+id/nameText"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center_vertical"
        android:textColor="@android:color/black" />

'layout_weight'を追加して、'layout_width'を"fill_parent"に変更してみてください。

お役に立てれば!

于 2012-07-30T20:58:49.917 に答える
0

コンテンツを折り返さず、幅にfill_parentを使用し、android:ellipsize="true"を設定します

于 2012-07-30T21:01:12.843 に答える