Android 活动在片段下方可见且可单击

Android 活动在片段下方可见且可单击,android,android-fragments,Android,Android Fragments,每当我使用我的动作栏调出一个新片段时,无论是偏好片段还是自定义片段,背景都是透明的,可以点击。我不能简单地设置背景颜色,因为用户仍然可以点击片段。我认为问题就在这里,但不确定 @Override public boolean onOptionsItemSelected(MenuItem item) {//Present list of options on action bar touch. // Handle action bar item clicks here. The actio

每当我使用我的动作栏调出一个新片段时,无论是偏好片段还是自定义片段,背景都是透明的,可以点击。我不能简单地设置背景颜色,因为用户仍然可以点击片段。我认为问题就在这里,但不确定

@Override
public boolean onOptionsItemSelected(MenuItem item) {//Present list of options on action bar touch.
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    switch (id)
    {
        case R.id.action_settings:
        {
            getFragmentManager().beginTransaction().replace(android.R.id.content, new PrefsFragment()).addToBackStack(null).commit();
            inSettings = true;
            break;
        }
        case R.id.probabiliy:
        {
            getFragmentManager().beginTransaction().replace(android.R.id.content, new probabilityFragment()).addToBackStack(null).commit();
            inSettings = true;
            break;
        }
    }
    return super.onOptionsItemSelected(item);
}

为您的首选项创建一个活动,为您的自定义片段创建一个活动,除非该片段用于您的主要活动。那么你就不会有这个问题了


片段是可以放置在活动中的应用程序用户界面或行为的一部分。它不是不透明的。活动是不透明的。想象一个活动是一个虚拟窗口,一个片段是活动中的一个超级小部件。

解决这一问题的最短方法是在当前片段布局中添加背景:颜色,关键是在相同布局中添加android:clickable to true