2013-07-20 18 views
6

私の目標は、画像Listview内に左右の位置合わせの行がありますか?

enter image description here

と私はコード
row_right.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@drawable/me" 
    android:layout_gravity="right" 
    android:layout_marginLeft="5dp" 
    android:layout_marginRight="10dp" 
    android:layout_marginBottom="5dp" 
    android:layout_marginTop="5dp" 
    android:orientation="vertical" > 


<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:layout_weight="5" 
    android:layout_marginLeft="5dp" 
    android:layout_marginRight="15dp" 
    android:layout_gravity="right" 
    android:layout_marginTop="5dp" 
    android:layout_marginBottom="5dp" 
    android:orientation="horizontal" > 

    <TextView 
     android:id="@+id/message" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="right" 
     android:textSize="15sp" 
     android:textColor="#000000" 
     android:text="TextView" /> 

</LinearLayout> 



<LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="15dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/dataAndTime" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="right" 
      android:textSize="15sp" 
      android:textColor="#001199" 
      android:text="gggggggghyjkljgfdgjlkhfdhklggg" /> 

</LinearLayout> 

</LinearLayout> 

row_left.xml

<?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="wrap_content" 
    android:background="@drawable/you" 
    android:layout_gravity="left" 
    android:layout_marginLeft="10dp" 
    android:layout_marginRight="5dp" 
    android:layout_marginBottom="5dp" 
    android:layout_marginTop="5dp" 
    android:orientation="vertical" > 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="0dp" 
    android:layout_weight="5" 
    android:layout_marginLeft="5dp" 
    android:layout_marginRight="15dp" 
    android:layout_gravity="right" 
    android:layout_marginTop="5dp" 
    android:layout_marginBottom="5dp" 
    android:orientation="horizontal" > 

    <TextView 
     android:id="@+id/message" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:gravity="right" 
     android:textSize="15sp" 
     android:textColor="#000000" 
     android:text="TextView" /> 

    </LinearLayout> 



    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="15dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/dataAndTime" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="right" 
      android:textSize="15sp" 
      android:textColor="#001199" 
      android:text="gggggggggg" /> 

     </LinearLayout> 

</LinearLayout> 

main.xml

下回ってい下回っています

が、私の結果は、私はそれを修正するにはどうすればよい

enter image description here

になりますか?

UPDATE1
私listAdapter.java

public class ListAdapter1 extends BaseAdapter { 
private LayoutInflater myInflater; 
private List<SmsInformation> list; 

public ListAdapter1(Context context) { 
    myInflater = LayoutInflater.from(context); 

} 

public void setData(List<SmsInformation> list2) { 
    this.list = list2; 

} 

@Override 
public int getCount() { 
    return list.size(); 
} 

@Override 
public Object getItem(int position) { 
    return null; 
} 

@Override 
public long getItemId(int position) { 
    return 0; 
} 

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    ViewHolder holder;   

    if (convertView == null) { 
     if (list.get(position).getTypeOfSms().equals("send")) 
      convertView  = myInflater.inflate(R.layout.raw_left, null); 
     else 
      convertView  = myInflater.inflate(R.layout.raw_right, null); 

     holder   = new ViewHolder(); 
     holder.message  = (TextView) convertView.findViewById(R.id.message); 
     holder.dateAndTime  = (TextView) convertView.findViewById(R.id.dataAndTime); 



     convertView.setTag(holder); 
    } else { 
     holder = (ViewHolder) convertView.getTag(); 
    } 

    holder.message.setText(list.get(position).getMessageContent()); 
    holder.dateAndTime.setText(list.get(position).geTime()+list.get(position).getDate()); 




    return convertView; 
} 

static class ViewHolder { 
    TextView message; 
    TextView dateAndTime; 
} 

} 
+0

をあなたのlisに左右レイアウトを置くtview? – kvh

+0

あなたのリストビューアダプタコードを投稿できますか? – Vikram

答えて

6

変更が行わ:

〜& row_left.xmlrow_right.xmlで、親LinearLayoutlayout_width属性がmain.xmlwrap_content代わりのmatch_parent

〜に設定する必要があり、layout_widthListViewの属性がmatch_parentに設定する必要があります。ないwrap_content

次のコードを試してください:あなたはどのように

〜row_right.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/me" 
    android:layout_alignParentRight="true" 
    android:layout_marginLeft="5dp" 
    android:layout_marginRight="10dp" 
    android:layout_marginBottom="5dp" 
    android:layout_marginTop="5dp" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_weight="5" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="15dp" 
     android:layout_gravity="right" 
     android:layout_marginTop="5dp" 
     android:layout_marginBottom="5dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/message" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:gravity="right" 
      android:textSize="15sp" 
      android:textColor="#000000" 
      android:text="TextView" /> 

    </LinearLayout> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="15dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/dataAndTime" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:gravity="right" 
      android:textSize="15sp" 
      android:textColor="#001199" 
      android:text="gggggggghyjkljgfdgjlkhfdhklggg" /> 

    </LinearLayout> 

</LinearLayout> 

</RelativeLayout> 

〜row_left.xml

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

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/you" 
    android:layout_alignParentLeft="true" 
    android:layout_marginLeft="10dp" 
    android:layout_marginRight="5dp" 
    android:layout_marginBottom="5dp" 
    android:layout_marginTop="5dp" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_weight="5" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="15dp" 
     android:layout_gravity="right" 
     android:layout_marginTop="5dp" 
     android:layout_marginBottom="5dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/message" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:gravity="right" 
      android:textSize="15sp" 
      android:textColor="#000000" 
      android:text="TextView" /> 

    </LinearLayout> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="15dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/dataAndTime" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:gravity="right" 
      android:textSize="15sp" 
      android:textColor="#001199" 
      android:text="gggggggggg" /> 

     </LinearLayout> 

</LinearLayout> 

</RelativeLayout> 

〜main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" 
    android:background="#FFFFFF" > 


    <ListView 
     android:id="@android:id/list" 
     android:layout_width="match_parent" 
     android:layout_height="0px" 
     android:layout_weight="1" 
     android:scrollbars="vertical" 
     android:divider="@null" 
     android:dividerHeight="0dp" /> 

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

     <EditText 
      android:id="@+id/content" 
      android:layout_width="253dp" 
      android:layout_height="wrap_content" 
      android:autoText="false" 
      android:capitalize="none" 
      android:ems="10" 
      android:scrollHorizontally="true" 
      android:singleLine="true" 
      android:textSize="16sp" 
      android:hint="Enter text" 
     >  

     </EditText> 

     <Button 
      android:id="@+id/send" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content"   
      android:text="Send" /> 

    </LinearLayout> 

</LinearLayout> 
+0

あなたのコードをしないでください右と左の問題は解決されますが、私は背景のサイズをしたくないfill_parentすべての幅___iは、背景の幅がテキストのサイズに依存します。 –

+0

あなたは私の目標を見ることができますimage.thanks –

+0

@ MM-BB私のコードが現在どのように見えるのスクリーンショットを投稿できますか? – Vikram

0

ただの推測。 in main.xmlあなたのListViewからmatch_parentの幅を変更してください。 また、EditTextbuttonを含むレイアウトに適切なウェイトを追加します。これでスペース全体がlistViewに割り当てられます。

+0

あなたのコードでは、 –

関連する問題