そのため、イメージ ビューに設定したイメージをユーザーが上書きできるようにしたいと考えています。画像が設定され、動作します。ユーザーが画像をクリックすると、クリックした場所に [テキストの編集] ボックスが表示されます。ただし、編集テキストの白い背景は背景の画像をブロックします。そこで、編集テキストの背景を透明に設定しました。
editTextOne.setBackgroundColor(Color.TRANSPARENT);
これは、編集テキストの背景を透明にすることで機能します。ただし、入力を開始しない限り、カーソルも表示されなくなりました。
それで、私が求めているのは、とにかく EditText の背景を透明にする方法があるかどうかですが、カーソルを表示して点滅させることはできますか? どんな助けでも大歓迎です、ありがとう!
コード:
public boolean onTouch(View view, MotionEvent event){
if (type == true){
touchX = (int) event.getX();
touchY = (int) event.getY();
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) editTextOne.getLayoutParams();
params.leftMargin = touchX;
params.topMargin = touchY;
params.addRule(RelativeLayout.ALIGN_PARENT_TOP);
params.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
editTextOne.setLayoutParams(params);
editTextOne.setVisibility(View.VISIBLE);
editTextOne.bringToFront();
editTextOne.setBackgroundColor(Color.TRANSPARENT);
editTextOne.requestFocus();
editTextOne.setCursorVisible(true);
}//end of if statement
return true;
}//end of onTouch
XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/relative" >
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_toLeftOf="@+id/load"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:text="C"
android:textStyle="bold"
android:textSize="20dp"
android:id="@+id/camera"
android:onClick="camera"/>
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_toLeftOf="@+id/view"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:id="@+id/load"
android:text="L"
android:textStyle="bold"
android:textSize="20dp"
android:onClick="load"/>
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:text="v"
android:id="@+id/view"
android:textStyle="bold"
android:textSize="20dp"
android:onClick="view"/>
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_toLeftOf="@+id/camera"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:text="T"
android:textStyle="bold"
android:textSize="20dp"
android:id="@+id/text"
android:onClick="text"/>
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:background="@null"
android:visibility="invisible"
android:id="@+id/textone"/>
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"
android:inputType="textAutoCorrect"
android:singleLine="true"
android:id="@+id/edittextone"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:id="@+id/picture"/>
</RelativeLayout>
編集:カーソルがすぐに表示されない理由はわかりませんが、スペースバーを押すとカーソルが表示されることがわかりました。だから、私が使用した私の問題を解決するために:
editTextOne.setText(" ");
これにより、最初のテキストとしてスペースが配置されるため、カーソルが表示されます。これが、他の誰かが同様の問題で立ち往生するのに役立つことを願っています。