在用户可以输入文本之前出现android intent chooser

时间:2014-06-24 18:25:47

标签: android android-layout android-intent android-ui start-activity

我有一个文本框,它接受用户输入然后启动此link或启动reddit应用程序(取决于用户在出现的选择器中选择的内容)。出于某种原因,当您单击文本框开始键入时,选择器会出现,而不会让用户有机会开始输入。为什么会发生这种情况?如何才能使选择器仅在用户提交文本后出现?

public void searchBar(View view)
{
    EditText et = (EditText)findViewById(R.id.editTextSearchBar);
    String input = et.getText().toString();
    String goTo = "http://reddit.com/r/"+input;
    Uri webpage = Uri.parse(goTo);
    Intent webIntent = new Intent(Intent.ACTION_VIEW,webpage);
    startActivity(webIntent);
}

<EditText
     android:id="@+id/editTextSearchBar"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:ems="10"
     android:hint="@string/redditHint"
     android:inputType="textUri"
     android:imeOptions="actionGo"
     android:onClick="searchBar"
    />

据我所知,此代码未考虑用户未输入任何文本但仍然按下输入的实例。出于所有密集目的,我们假设用户确实输入了一些文本。

1 个答案:

答案 0 :(得分:0)

这是因为你做得不对。当用户点击编辑文本时,会调用searchBar函数,然后调用startActivity - &gt;应用程序选择对话框

查看处理键盘上返回按钮的here。 我希望这能解释