如何使用代码制作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