Android 膨胀视图的getId()返回什么?

Android 膨胀视图的getId()返回什么?,android,switch-statement,layout-inflater,Android,Switch Statement,Layout Inflater,嘿,伙计们 我目前有一个开关盒的问题,它应该是我的充气视图(我有3个不同的布局,这取决于显示的片段,将在我的菜单栏中充气) 目前,我的交换机外壳如下所示: switch(inflatedView.getId()){ case R.layout.menu_title_only: break; case R.layout.menu_segment_controller: break; } 但是,当它确实充气时,

嘿,伙计们

我目前有一个开关盒的问题,它应该是我的充气视图(我有3个不同的布局,这取决于显示的片段,将在我的菜单栏中充气)

目前,我的交换机外壳如下所示:

switch(inflatedView.getId()){
        case R.layout.menu_title_only:
            break;
        case R.layout.menu_segment_controller:
            break;
    }
但是,当它确实充气时,它不会处理所需的情况

我知道View.getId()返回这个视图的android:id,但是如果这个视图膨胀了呢?那么它将返回哪个id

public void inflateMenu(BaseFragment frag, String color){
    this.color = color;
    // Clear Views
    menu.removeAllViews();

    // Check which menu to inflate
    Class<? extends Fragment> FragClass;
    FragClass = frag.getClass();
    if(FragClass == LocationsFragment.class || FragClass == MustDoFragment.class){
        menu.removeAllViews();
        inflatedView = activity.getLayoutInflater().inflate(R.layout.menu_segment_controller, menu);
    } else if(FragClass == HomeFragment.class) {
        inflatedView = activity.getLayoutInflater().inflate(R.layout.menu_title_only, menu);
    } else if(FragClass == ButtonFragment.class || FragClass == NewsFragment.class ||
            FragClass == EventsFragment.class || FragClass == MapFragment.class) {
        inflatedView = activity.getLayoutInflater().inflate(R.layout.menu_title_only, menu);
    } else if(FragClass == ViewLocationFragment.class){
        inflatedView = activity.getLayoutInflater().inflate(R.layout.menu_share_favorite, menu);
    } else {
        inflatedView = activity.getLayoutInflater().inflate(R.layout.menu_title_only, menu);
    }
    setListeners();
}
public void充气菜单(基本碎片框架,字符串颜色){
这个颜色=颜色;
//清晰的视图
menu.removeallview();
//检查要充气的菜单
ClassgetId()将返回布局中顶级视图的id。例如,如果在my_layout.xml中有这样的布局文件:

然后getId()将返回
R.layout.menu\u segment\u controller

getId()将返回布局中顶级视图的id。例如,如果在my\u layout.xml中有这样的布局文件:


然后getId()将返回
R.layout.menu\u segment\u controller

你运行了你的应用程序吗?是的,我运行了你的应用程序吗?是的,我运行了我的应用程序。显示你是如何膨胀你的视图的?我将尝试setId(),因为R.id.top\u布局不工作。我将尝试setId(),因为R.id.top_布局不工作。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/top_layout"
    android:layout_width="wrap_content"
    android:layout_height="match_parent" >

    <ImageView
        android:id="@+id/testimage"
        android:layout_width="500dp"
        android:layout_height="500dp"
        android:src="@drawable/image1" />

</RelativeLayout>
inflatedView = activity.getLayoutInflater().inflate(R.layout.menu_segment_controller, menu);
inflatedView.setId(R.layout.menu_segment_controller);