以下是一个示例代码,演示如何以编程方式显示标签的Android材料滑块:
// 添加必要的导入语句
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import com.google.android.material.tabs.TabLayout;
public class MyFragment extends Fragment {
private TabLayout tabLayout;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
// 加载布局文件
View view = inflater.inflate(R.layout.fragment_my, container, false);
// 获取TabLayout实例
tabLayout = view.findViewById(R.id.tab_layout);
// 添加标签
addTabs();
return view;
}
private void addTabs() {
// 创建TabLayout.Tab实例并设置标签文本
TabLayout.Tab tab1 = tabLayout.newTab().setText("Tab 1");
TabLayout.Tab tab2 = tabLayout.newTab().setText("Tab 2");
TabLayout.Tab tab3 = tabLayout.newTab().setText("Tab 3");
// 添加Tab到TabLayout
tabLayout.addTab(tab1);
tabLayout.addTab(tab2);
tabLayout.addTab(tab3);
// 设置Tab选择监听器
tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
// 标签被选中时调用
// 在这里可以处理标签选择的逻辑
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
// 标签未被选中时调用
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
// 标签被再次选中时调用
}
});
}
}
在上述代码中,MyFragment
是一个继承自Fragment
的自定义片段类。在onCreateView
方法中,我们加载了一个布局文件(fragment_my.xml
),并获取了TabLayout
的实例。然后,我们调用addTabs
方法来添加标签。在addTabs
方法中,我们创建了三个TabLayout.Tab
实例,并使用setText
方法设置了标签的文本。然后,我们使用addTab
方法将这些标签添加到TabLayout
中。最后,我们使用addOnTabSelectedListener
方法设置了一个选择监听器,以便在标签被选中、未被选中或再次被选中时执行相应的操作。
请注意,在使用此代码之前,您需要在fragment_my.xml
布局文件中添加一个TabLayout
控件(例如,使用
标签)。