gpt4 book ai didi

java - 如何从另一个 xml 文件访问我的 ID?

转载 作者:数据小太阳 更新时间:2023-10-29 02:43:35 24 4
gpt4 key购买 nike

我正在制作一个带有实现 com.roughike:bottom-bar:2.3.1 的 bottom_bar,我想在 bottombar 项目上调用 setOnTabSelectListener,但我不能从 xml 文件中找不到带有 R.id 的底部栏项目。我的问题是什么?

来自 res/layout/activity_main 的 XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">

<FrameLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/bottom_bar"
>
</FrameLayout>
<com.roughike.bottombar.BottomBar
android:id="@+id/bottom_bar"
android:layout_width="match_parent"
android:layout_height="@dimen/margin_50dp"
android:layout_alignParentBottom="true"
app:bb_tabXmlResource="@xml/tab"
>
</com.roughike.bottombar.BottomBar>
</RelativeLayout>

enter code here

我的来自 res/xml/tab 的 XML

<?xml version="1.0" encoding="utf-8"?>
<tabs>
<tab
id="@+id/home_tab"
icon="@drawable/home_btn"
/>
<tab
id="@+id/search_tab"
icon="@drawable/search_btn"
/>
<tab
id="@+id/new_post_tab"
icon="@drawable/new_post_btn"
/>
<tab
id="@+id/profile_tab"
icon="@drawable/profile_btn"
/>
</tabs>

我的类来自 java/com.ms.ma/MainActivity
 private void init_bottomBar(){

bottomBar = findViewById(R.id.bottom_bar);

bottomBar.setOnTabSelectListener(new OnTabSelectListener() {
@Override
public void onTabSelected(int tabId) {

switch (tabId)
{
case R.id.home_tab: <--here i cant find home_tab-->

break;
}
}
});
}

最佳答案

如果此 id 来自另一个 xml 文件,则您无法在 Activity 中找到您的 id

试试这个方法:

View inflatedView = getLayoutInflater().inflate(R.layout.your_layout, null);
BottomBar bottomBar = (BottomBar) inflatedView.findViewById(R.id.bottom_bar);

bottomBar.setOnTabSelectListener(new OnTabSelectListener() {
@Override
public void onTabSelected(int tabId) {

switch (tabId)
{
case R.id.home_tab:

break;
}
}
});

关于java - 如何从另一个 xml 文件访问我的 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54361262/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com