如何使用代码制作SeekBar界面?

我在一个片段中创建了一些SeekBars,在我的java文件中创建了一个OnSeekBarChangeListener,但是似乎在xml布局和java文件之间存在不明原因的断开。如何使用代码制作SeekBar界面?

Java类

public View onCreateView(LayoutInflater inflater, ViewGroup container, 

Bundle savedInstanceState) {

// Inflate the layout for this fragment

View root = inflater.inflate(R.layout.fragment_preferences, container, false);

final SeekBar s1 = (SeekBar) root.findViewById(R.id.s1Bar);

final TextView spicinessText = (TextView) root.findViewById(R.id.spicinessTxt);

s1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

@Override

public void onProgressChanged(SeekBar seekBar, int i, boolean b) {

Toast.makeText(getContext(), String.valueOf(i), Toast.LENGTH_SHORT).show();

spicinessText.setText("Spiciness " + String.valueOf(i));

}

@Override

public void onStartTrackingTouch(SeekBar seekBar) {

}

@Override

public void onStopTrackingTouch(SeekBar seekBar) {

}

});

return inflater.inflate(R.layout.fragment_preferences, container, false);

}

XML布局

<FrameLayout> 

<!-- TODO: Update blank fragment layout -->

<LinearLayout

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical">

<TextView

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Spiciness"

android:id="@+id/spicinessTxt"/>

<SeekBar

android:id="@+id/s1Bar"

android:layout_width="match_parent"

android:layout_height="wrap_content" />

<TextView

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Sourness"/>

<SeekBar

android:id="@+id/seekBar4"

android:layout_width="match_parent"

android:layout_height="wrap_content" />

<TextView

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Sweet"

android:id="@+id/sweet"/>

<SeekBar

android:id="@+id/seekBar5"

android:layout_width="match_parent"

android:layout_height="wrap_content" />

<TextView

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Salty"/>

<SeekBar

android:id="@+id/seekBar6"

android:layout_width="match_parent"

android:layout_height="wrap_content" />

<TextView

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text=""/>

我发起了外部设备上的应用程序和实际的布局根本不与Java通信代码,即使我很确定我已经完成了所有的工作。如果任何人都可以看到我在这里做出的任何严重错误,那将非常感激。

回答:

这里是您所查询的解决方案:

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 

{

// Inflate the layout for this fragment

View root = inflater.inflate(R.layout.fragment_preferences, container, false);

final SeekBar s1 = (SeekBar) root.findViewById(R.id.s1Bar);

final TextView spicinessText = (TextView) root.findViewById(R.id.spicinessTxt);

s1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener()

{

@Override

public void onProgressChanged(SeekBar seekBar, int i, boolean b)

{

Toast.makeText(getContext(), String.valueOf(i), Toast.LENGTH_SHORT).show();

spicinessText.setText("Spiciness " + String.valueOf(i));

}

@Override

public void onStartTrackingTouch(SeekBar seekBar)

{ }

@Override

public void onStopTrackingTouch(SeekBar seekBar)

{ }

});

return root;

}

感谢和快乐编码。

以上是 如何使用代码制作SeekBar界面? 的全部内容, 来源链接: utcz.com/qa/257477.html

回到顶部