2011-10-05 223 views
0

我想让我的自定义警报对话框滚动我的textview,我似乎无法得到它的工作。我有一个图像和标题+关闭按钮,然后滚动textview下面我有一个表内的三个按钮。 任何人都可以弄清楚我做错了什么?滚动在自定义警报对话框中的TextView

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/layout_root" android:orientation="vertical" 
android:layout_width="fill_parent" android:layout_height="fill_parent" 
android:layout_marginLeft="10dip" android:layout_marginRight="10dip"> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/relViewTitle" android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:clickable="true"> 

    <ImageView android:id="@+id/titleImg" android:src="@drawable/redpin" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" /> 

    <TextView android:id="@+id/textTitle" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:layout_toRightOf="@id/titleImg" 
     android:layout_marginTop="10dip" android:layout_marginLeft="30dip" 
     android:textColor="#fffafa" android:textStyle="bold" /> 

    <Button android:id="@+id/btnClose" android:text="Close" 
     android:layout_width="60dip" android:layout_height="35dip" 
     android:layout_alignParentRight="true" /> 
</RelativeLayout> 
    <View android:layout_width="fill_parent" android:layout_height="1dip" 
    android:background="#fffafa" /> 

    <ScrollView android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 

    <TextView android:id="@+id/text" android:layout_width="fill_parent" 
     android:layout_height="wrap_content" android:paddingLeft="20dip" 
     android:paddingRight="20dip" android:singleLine="false" 
     android:maxLines="7" android:scrollbars="vertical" 
     android:paddingBottom="20dip" android:textColor="#fffafa" /> 
    </ScrollView> 


    <TableLayout android:id="@+id/tableBtns" 
    android:layout_width="fill_parent" android:layout_height="wrap_content" 
    android:stretchColumns="*"> 

    <TableRow android:gravity="center" android:layout_width="wrap_content"> 
     <Button android:id="@+id/btnDialPrev" android:text="Previous" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" /> 
     <Button android:id="@+id/btnDialOk" android:text="ok" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" /> 

     <Button android:id="@+id/btnDialNext" android:text="Next" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" /> 
    </TableRow> 
    </TableLayout> 

+0

LinearLayout在哪里结束? – Hiral

回答

1

它为什么要滚动?您已将maxLines设置为7,并将高度设置为wrap_content,因此它总是会占用足够的空间来显示其所有内容。

+0

我认为最大线会迫使它滚动在那个长度的线,我需要添加'android:fillViewport =“true”'来让它工作。谢谢你的帮助。 –

+0

不,maxLines确实是最大的行;) – banzai86

+0

不,它的显示高度参数:public void setMaxLines(int maxlines)从以下版本开始:API级别1 使TextView至多有很多行高。设置此值将覆盖任何其他(最大)高度设置。 http://developer.android.com/reference/android/widget/TextView.html#setMaxLines%28int%29 – vmatyi

0

创建普通XML,并在想要使用新类显示警报对话框时调用它。

alertbutton.setOnClickListener(新OnClickListener(){

public void onClick(View v) { 
     // TODO Auto-generated method stub 

     Intent i = new Intent(fromclassname.this, AlertDialog.class); 
     startActivity(i); 


    } 
}); 

------------------------------ -------------------------------------------------- -
呼叫从AlertDilog.class

的的your.XML

在最后的manifest.xml, 在活动声明

机器人:名字=机器人:主题=“@ Android ”的AlertDilog。“ :style/Theme.Dialog“