1
我有一個問題彈出。 我無法在EditText上輸入彈出窗口。當我按下TextView時,我想打開彈出窗口並在按下保存按鈕以輸入TextView內容時輸入EditText Edittext如何打開編輯文本彈出鍵盤Android
類彈出窗口打開!
private TextView name;
private PopupWindow popupWindow=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
name=(TextView)findViewById(R.id.name);
name.setOnClickListener(new OnClickListener()
{ @Override
public void onClick(View arg0) {
if(popupWindow!=null)
{
popupWindow.dismiss();
popupWindow=null;
}
openpopup();
}
});
}
功能打開彈出
private void openpopup()
{
LayoutInflater layoutInflater= getLayoutInflater();
View popupView = layoutInflater.inflate(R.layout.edittext, null);
popupWindow = new PopupWindow(popupView,LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT);
Button btnsave = (Button)popupView.findViewById(R.id.save);
Button btncancel =(Button)popupView.findViewById(R.id.cancel);
final EditText text=(EditText)popupView.findViewById(R.id.name);
btnsave.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
popupWindow.dismiss();
popupWindow=null;
if(text.getText()==null)
{
name.setText(text.getText().toString());
}
}});
btncancel.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
popupWindow.dismiss();
popupWindow=null;
}});
popupWindow.showAsDropDown(name, 0, 0);
}
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" >
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerInParent="true"
android:text="@string/name" />
</RelativeLayout>
edittext.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" >
<EditText
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="text" >
<requestFocus />
</EditText>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@+string/save"/>
<Button
android:id="@+id/cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@+string/cancel"/>
</LinearLayout>
</LinearLayout>
怎樣開鍵盤,你可以輸入彈出EDITTEXT?
感謝您的回答做到這一點。通過這個命令'popupWindow.setFocusable(true);'解決了一半問題。但是,如果我想要鍵盤「adjustResize」並同時彈出出現,我該怎麼辦? –