Kotlinでタブアイコンをセットしようと思ったのですが、
Javaの時は
MainActivity内で以下のようにすれば出来たのですが、
private TabLayout tabLayout;
private int[] tabIcons ={
R.drawable.ic_action_home,
R.drawable.ic_action_info,
R.drawable.ic_action_more
};
//タブアイコンのセット
private void setUpTabIcon(){
tabLayout.getTabAt(0).setIcon(tabIcons[0]);
tabLayout.getTabAt(1).setIcon(tabIcons[1]);
tabLayout.getTabAt(2).setIcon(tabIcons[2]);
}
Kotlinだと.setIconのところで
「Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type TabLayout.Tab?」
とのエラーになり、以下の方法が使えません。
val tabs: TabLayout = findViewById(R.id.tabs)
val tabIcons = arrayOf(
R.drawable.ic_action_home,
R.drawable.ic_action_news,
R.drawable.ic_action_more
)
//タブアイコンのセット
private fun setUpTabIcon(){
tabs.getTabAt(0).setIcon(tabIcons[0])
tabs.getTabAt(1).setIcon(tabIcons[1])
tabs.getTabAt(2).setIcon(tabIcons[2])
}
setIconに代わるものを探したのですが見つかりません。
Javaの時と同じように実装することはできないのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/08 05:26