0

我需要在图像视图上实现一个文本,用户可以在图像视图上键入他的文本。我们如何根据用户实现文本并根据用户添加字体?

这是我的完整形象活动课

     public class FullImageActivity extends Activity {

       @Override
        public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fullimage);

        // get intent data
        Intent i = getIntent();

        // Selected image id
        int position = i.getExtras().getInt("id");
        ImageAdapter imageAdapter = new ImageAdapter(this);

        ImageView imageView = (ImageView) findViewById(R.id.full_image_view);
        imageView.setImageResource(imageAdapter.mThumbIds[position]);
    }

}

全图.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="match_parent"
android:orientation="vertical" >

<ImageView android:id="@+id/full_image_view"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>

 </LinearLayout>
4

6 回答 6

1
<ImageView android:id="@+id/full_image_view"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>

<TextView
    android:id="@+id/myImageViewText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/myImageView"
    android:layout_alignTop="@+id/myImageView"
    android:layout_alignRight="@+id/myImageView"
    android:layout_alignBottom="@+id/myImageView"
    android:layout_margin="1dp"
    android:gravity="center"
    android:text="Your Text"
    android:textColor="#000000" />

注意:它只适用于RELATIVE LAYOUT

或尝试以下代码

TextView t = (TextView)findViewById(R.id.text_view);
t.setGravity(Gravity.CENTER);
t.setBackgroundResource(R.drawable.my_drawable);
t.setText("your text");

为了EDITEXT

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

    <ImageView
        android:id="@+id/full_image_view"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>

    <EditText
        android:id="@+id/edit_text1"
        android:layout_alignParentBottom="true" />

</RelativeLayout>
于 2013-09-17T06:40:53.187 回答
0

根据您的需要,在 RelativeLayout 中添加 ImageView 和 EditText:-

<RelativeLayout android:id="@+id/full_image_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView android:id="@+id/full_image_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>

    <EditText android:id="@+id/my_edit_text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"  //or any other alignment you want
    android:text="ABCD"
    />

</RelativeLayout>
于 2013-09-17T06:45:19.697 回答
0

这工作很好。

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

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

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="TextView" />
</FrameLayout>
于 2013-09-17T07:02:19.637 回答
0

添加相对布局,然后添加 imageview 并在其顶部添加 textview。

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

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:src="@drawable/icon_favorites" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="Small Text"
        android:textAppearance="?android:attr/textAppearanceSmall" />

</RelativeLayout>
于 2013-09-17T06:48:03.217 回答
0

使用如下框架布局:

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

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/ic_launcher" />

<TextView
    android:id="@+id/tvText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Your Text" Visibility="Gone" />

</FrameLayout>

在代码中,当用户触摸 imageview 上的特定位置时,通过设置 textview 的边距来显示 textview

于 2013-09-17T06:49:16.263 回答
0
// try this
<FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"/>

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="top" // set gravity as per your requirement to show
            android:gravity="center_vertical"
            android:textStyle="bold" />
    </FrameLayout>
于 2013-09-17T06:57:39.910 回答