ポップアップ シークバー ダイアログを呼び出すボタンをクリックすると、TextView のサイズを変更したいと考えています。
明確にするために絵を見てください。
アラート ダイアログにシーク バーを配置するにはどうすればよいですか? で検索しました。カスタムアラートダイアログ内のテキストビューにシークバーの進行状況を表示して解決策を見つけます。これが私のコードです:
btn_font.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.dialog_change_fontsize,
(ViewGroup) findViewById(R.id.layout_viewdetailcontent));
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(ViewDetailActivity.this)
.setView(layout);
final SeekBar sb = (SeekBar) layout.findViewById(R.id.seekBar1);
sb.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
public void onProgressChanged(SeekBar seekBar,
int progress, boolean fromUser) {
// Do something here with new value
p = progress;
tv_content.setTextSize(p);
}
@Override
public void onStartTrackingTouch(SeekBar arg0) {
// TODO Auto-generated method stub
p = 16;
tv_content.setTextSize(p);
}
@Override
public void onStopTrackingTouch(SeekBar arg0) {
// TODO Auto-generated method stub
if (p < 16) {
p = 16;
sb.setProgress(p);
}
Toast.makeText(getBaseContext(), String.valueOf(p),
Toast.LENGTH_SHORT).show();
}
});
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}
});
しかし、機能していません。私が間違っていることを見つけるのを手伝ってください。前もって感謝します。