Android列表查看项目对齐方式

Gau*_*ora 1 android listview

我有一个列表视图,我在其中动态添加项目.我想要一些(我选择的)项目应该与左侧对齐,有些对齐到右侧.这个东西可以用Android的ListView吗?

//适配器

if (convertView == null) {
                holder = new EventViewHolder();
                if (type == 1) {
                    convertView = inflater.inflate(
                            R.layout.multi_line_list_item, null);
                    holder.mtvMessage = (TextView) convertView
                    .findViewById(R.id.tvMessage);
                    holder.mtvMessage.setGravity(Gravity.LEFT);
                    holder.mtvMessage.setBackgroundResource(R.drawable.chatbluebox);
                    convertView.setTag(holder);
                }else{
                    convertView = inflater.inflate(
                            R.layout.multi_line_list_item, null);
                    holder.mtvMessage = (TextView) convertView
                    .findViewById(R.id.tvMessage);
                    holder.mtvMessage.setGravity(Gravity.RIGHT);
                    holder.mtvMessage.setBackgroundResource(R.drawable.chatgreenbox);
                    convertView.setTag(holder);

            }
Run Code Online (Sandbox Code Playgroud)

如果可以,请告诉我并建议我一个好的解决方案?

MKB*_*MKB 5

android:stackFromBottom="true"
android:transcriptMode="alwaysScroll"
Run Code Online (Sandbox Code Playgroud)

在listView xml条目中添加这些行..,.

对于左右对齐,保持两个布局xmls一个右对齐和另一个左对齐(无论你想要什么样的样子)然后在listAdapter的getView()方法中设置一些条件并根据需要膨胀这些xml

if (convertView == null)
    if(some condition)
        convertView = mInflater.inflate(R.layout.rightxml, null);
    else
        convertView = mInflater.inflate(R.layout.leftxml, null);
    ....
Run Code Online (Sandbox Code Playgroud)