시크바를 사용해서 커스텀 리스트뷰에 있는 글씨들을 같은 크기로 시크바의 값대로 키우려고 합니다
public View getView(int position, View convertView, ViewGroup parent) {
BibleVerse bean = items.get(position);
ViewHolderItem holder;
if(convertView == null){
convertView = LayoutInflater.from(parent.getContext()).inflate(R.layout.bible_item,null);
holder = new ViewHolderItem();
holder.verseText = (TextView)convertView.findViewById(R.id.verse);
holder.contentsText = (TextView)convertView.findViewById(R.id.content);
Log.d("bible", "getView: ");
Log.d("bible", "glodbProg : "+ Bible.globProg);
holder.verseText.setTextSize(TypedValue.COMPLEX_UNIT_PX, Bible.globProg);
holder.contentsText.setTextSize(TypedValue.COMPLEX_UNIT_PX, Bible.globProg );
convertView.setTag(holder);
이게 어뎁터 클래스의 getview고
Button fontSizeChange = (Button)findViewById(R.id.fontchangebtn);
fontSizeChange.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(visable == false) {
bar.setVisibility(View.VISIBLE);
visable = true;
bar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
int Blast;
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
globProg= seekBar.getProgress();
Log.d("bible", "globProg "+globProg);
Blast = progress;
holderItem.verseText.setTextSize(TypedValue.COMPLEX_UNIT_PX, globProg);
holderItem.verseText.setTextSize(TypedValue.COMPLEX_UNIT_PX, globProg);
adapter.notifyDataSetChanged();
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
globProg= seekBar.getProgress();
adapter.notifyDataSetChanged();
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
globProg= seekBar.getProgress();
adapter.notifyDataSetChanged();
}
});
}else{
bar.setVisibility(View.INVISIBLE);
visable = false;
}
}
});
이게 시크바 코드입니다
다 작동은 잘 되는데 시크바에서 그래프를 움직이면 움직일때 바로바로 글씨가 커지는게 보이게 구현하고싶은데 지금은 그래프를 움직이고 리스트뷰가 바뀌어야 그 글씨가 적용이 됩니다... 어떻게 수정할 수 있을까요??