我对Android中的编程非常陌生,但一直在努力解决问题并感谢您的帮助。
我正在尝试创建一个表单来获取从菜单访问的用户信息(实际上是新的联系人)。当我单击按钮创建新表单时,出现以下错误:
“窗口已经集中,无视焦点增益:com.android.internal.view.IInputMethodClient$Stub$Proxy@626fd5e0”
这是我的代码:
菜单xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/search"
android:title="@string/settings_search"
android:alphabeticShortcut="@string/settings_shortcut_search" />
<item android:id="@+id/new_contact"
android:title="@string/settings_new"
android:alphabeticShortcut="@string/settings_shortcut_new" />
</menu>
调用新活动的代码:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.new_contact:
//activities to create a new account
//startActivity(new Intent(this, Prefs.class));
Intent i = new Intent(MainActivity.this, NewContact.class);
startActivity(i);
//addSaver("String");
return true;
case R.id.search:
return true;
// More items go here (if any) ...
}
return false;
}
新联系活动的视图:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">"
<LinearLayout
android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_gravity="top">
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="This is a test\nsecond line\n"/>
<Button
android:id="@+id/new_contact_button"
android:layout_height="wrap_content"
android:text="@string/submit" />
</LinearLayout>
</ScrollView>
新活动的代码:
public class NewContact extends Activity implements OnClickListener {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.new_contact);
// Set up click listeners for all the buttons
View newContactButton = findViewById(R.id.new_contact_button);
newContactButton.setOnClickListener(this);
}
奇怪的是,如果我从类和xml中注释掉按钮,那么它可以正常工作并打开新活动(但当然我不能对该活动做任何事情)。
答案 0 :(得分:0)
在按钮xml代码中,您缺少
android:layout_width="wrap_content"
添加并试一试。