2010-08-20 85 views
5

我想为我的历史记录列表使用FastScroll并为段落使用日期,但警报对话框(显示联系人中的字母)不能伸展以适应文本的大小(我想在月份和日期显示)。调整FastScroll警报对话框

我该如何调整它?

+0

有没有进展?你有没有试过我的建议? – gary 2010-09-07 16:22:07

回答

1

我的解决方案。 我们禁用了内置Fastscroll功能,并使用this代码进行了小的更改。变量mOverlaySize负责部分警报的大小。

1

它可以像在AlertDialog类中使用setView一样简单吗? (除了对.xml的一些编辑)。首先,我从here获取有关setView的信息。

public void setView (View view, int viewSpacingLeft, int viewSpacingTop, int viewSpacingRight, int viewSpacingBottom) 

Set the view to display in that dialog, specifying the spacing to appear around that view.  
Parameters: 
view The view to show in the content area of the dialog 
viewSpacingLeft Extra space to appear to the left of view 
viewSpacingTop Extra space to appear above view 
viewSpacingRight Extra space to appear to the right of view 
viewSpacingBottom Extra space to appear below view 

而且这里的一些SDK的示例代码(AlertDialogSamples.java),使用setView

case DIALOG_TEXT_ENTRY: 
      // This example shows how to add a custom layout to an AlertDialog 
      LayoutInflater factory = LayoutInflater.from(this); 
      final View textEntryView = factory.inflate(R.layout.alert_dialog_text_entry, null); 
      return new AlertDialog.Builder(AlertDialogSamples.this) 
       .setIcon(R.drawable.alert_dialog_icon) 
       .setTitle(R.string.alert_dialog_text_entry) 
       .setView(textEntryView) 
       .setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int whichButton) { 

         /* User clicked OK so do some stuff */ 
        } 
       }) 
       .setNegativeButton(R.string.alert_dialog_cancel, new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int whichButton) { 

         /* User clicked cancel so do some stuff */ 
        } 
       }) 
       .create(); 
     } 
     return null; 

最后,一些xml文件看起来像它增加了旁的文字(alert_dialog_text_entry.xml)的利润。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical"> 

    <TextView 
     android:id="@+id/username_view" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:layout_marginLeft="20dip" 
     android:layout_marginRight="20dip" 
     android:text="@string/alert_dialog_username" 
     android:gravity="left" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 

希望它有帮助。

+0

这如何应用于FastScroll?对不起,迟到的答案。 – 2010-09-20 09:16:49