我正在创建一个应用程序,其中显示带有照片的GridView和一些带有照片详细信息的TextView(上传者,说明)。当用户点击GridView项目时,它应该在TextViews中显示更大的图片(就像在Facebook上点击图片一样)。
这就是为什么我决定使用Alert Dialog和自定义布局来实现它。布局如下,只是图片右侧的ImageView和TextView。
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
tools:context="com.example.handmadecommunity.FullImageActivity" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<ImageView
android:id="@+id/picture"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:contentDescription="@string/contentDescriptor"
android:maxHeight="500dp"
android:maxWidth="500dp"
android:src="@drawable/test" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/picture"
android:layout_marginLeft="41dp"
android:layout_marginTop="24dp"
android:layout_toRightOf="@+id/picture"
android:ellipsize="marquee"
android:gravity="left"
android:scrollHorizontally="true"
android:singleLine="false"
android:textAppearance="?android:attr/textAppearanceMedium" />
</RelativeLayout>
</ScrollView>
我按以下方式创建警报对话框(只是指出,这是一个片段,这就是为什么getActivity())
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
View layout = inflater.inflate(R.layout.activity_full_image, null);
TextView description = (TextView) layout.findViewById(R.id.textView1);
description.setText(desc);
alertDialogBuilder.setTitle(title).setView(layout).setCancelable(true);
AlertDialog alert = alertDialogBuilder.create();
alert.show();
我的问题可以在这张图片http://imgur.com/OGQRyse上显示。
我在布局或代码上遗漏了什么?
答案 0 :(得分:0)
你的ImageView太大了,它将TextView推出屏幕,试着把它放在ImageView下面
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:gravity="left"
android:scrollHorizontally="true"
android:singleLine="false"
android:text="Hello "
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_below="@+id/picture"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />