我將問題簡化爲可以複製的最小示例。Dialog的鍵盤消失後,VideoView顯示不正確
所以:有VideoView和ImageView的
- 1活動。
- 顯示了單擊ImageView AlertDialog後。
- AlertDialog有1個EditText字段。
- 我觸摸這個EditText並顯示標準的Android鍵盤。
- 關閉鍵盤。
- 關閉對話框。
問題: VideoView的邊界(黑色矩形)進行了擴展,因此ImageView的是不再顯示。
任何幫助表示讚賞!謝謝。
代碼:
MainActivity.java
import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.VideoView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Activity act = this;
final VideoView videoView = (VideoView) findViewById(R.id.videoView1);
videoView.setVideoPath("/mnt/sdcard/s1ep01.mp4");
videoView.requestFocus();
findViewById(R.id.imageView1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
AlertDialog.Builder builder = new AlertDialog.Builder(act);
View view = LayoutInflater.from(act).inflate(R.layout.dialog, null);
builder.setView(view);
builder.setPositiveButton("Save translation", null);
builder.setNegativeButton("Cancel", null);
AlertDialog dialog = builder.create();
dialog.show();
}
});
}
}
activity_main.xml中
<RelativeLayout 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"
tools:context=".MainActivity" >
<VideoView
android:id="@+id/videoView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true" />
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/videoView1"
android:src="@android:drawable/btn_dialog" />
</RelativeLayout>
dialog.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="wrap_content">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
我認爲在這種情況下添加到清單中的活動「android:windowSoftInputMode =」adjustNothing「'是安全的。 –