Я пытался найти слушателя, который может выполнить seekmark.markPlace ().Функция принимает размеры и отступы для seekBar, определенного в моем макете.Когда я вызываю функцию из onCreate, она возвращает 0 для значений seekBar.Мне нужен слушатель, который может вызывать функцию вне onCreate.Функция должна запускаться только при повороте экрана (при создании макета).
public class seekMark {
private int seekLength; // in pixels
private int seekLeftPad; // in pixels
private int seekBottomPad; // in pixels
private int trackLength; // in ms
public seekMark(){
seekLength = progressBar.getWidth();
seekLeftPad = progressBar.getPaddingLeft();
seekBottomPad = progressBar.getPaddingBottom();
trackLength = player.getDuration();
}
private int pxPerMs(){
return (seekLength/trackLength);
}
public void markPlace() throws XmlPullParserException, IOException {
Drawable marker = context.getResources().getDrawable(R.drawable.audio);
int y = seekBottomPad;
int x = 0;
int w = marker.getIntrinsicWidth();
int h = marker.getIntrinsicHeight();
int[] bmPos = markPxList(); // returns a list of px (from the left) read from a xml database
for(int i = 0; i <= bmPos.length; i++){
x = bmPos[i] + seekLeftPad;
marker.setBounds( x, y, x + w, y + h );
marker.draw( canvas );
}
}
}
Можно ли сделать свой собственный слушатель, например, onRotate () или что-то в этом роде?