以编程方式向搜索栏添加主题使搜索栏消失

问题描述 投票:2回答:2

我需要根据配置添加可变数量的Seekbars。

for(int i=0;i<length;i++){

            seeks[i] = new SeekBar(getActivity());
            seeks[i].setMax(4);
            LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
            layoutParams.setMargins(30,30,30,30);
            seeks[i].setLayoutParams(layoutParams);
            ll.addView(seeks[i]);
            seeks[i].setVisibility(View.VISIBLE);

效果很好,但我希望Seekbar是离散的。在XML中,您只需添加:

<SeekBar
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/Base.Widget.AppCompat.SeekBar.Discrete"/>

但是,如果我遵循文档,您应该能够在Seekbar构造器中添加主题,如下所示:

seeks[i] = new SeekBar(getActivity(), null, R.style.myTheme2 );

我已在styles.xml中设置主题的位置,或

seeks[i] = new SeekBar(getActivity(), null, R.style.Widget_AppCompat_SeekBar_Discrete);

但是,一旦我做任何一件事情,搜索栏就会完全从视野中消失。

android android-seekbar
2个回答
0
投票

让它正常工作,留给其他有相同问题的人,因为我在任何地方都找不到它:

首先为每个单独的SeekBar设置布局:


0
投票

当您使用XML时,它实际上设置了一些默认属性。它位于core / res / res / values / styles.xml

© www.soinside.com 2019 - 2024. All rights reserved.