2014-08-27 17 views
0

我有一个自定义视图,可以在其中绘制线条,我也可以选择线条的宽度。我还有一个统计数据,在另一个片段中,我应该显示从哪个笔划绘制了多少行。行程宽度的自定义侦听器

所以我想创建一个自定义侦听器,它应该对不同的笔画宽度做出反应。每当中风改变的统计应该显示新鲜笔画被选中的计数...

我试过它与一个接口,但我真的不知道如何前进。 我该怎么做?

回答

0

没有看到任何你的代码,我想你可以尝试这样的事情:

// DrawerLines

public class DrawerLines extends View { 

private int _countLines; 
private LinesCounterListener _linesCounterListener; 

public DrawerLines(Context context, AttributeSet attrs) { 
    super(context, attrs); 
} 

public void addCountLinesListener(LinesCounterListener linesCounterListener) { 
    _linesCounterListener = linesCounterListener; 
} 

private void drawLines() { 
    //Draw your lines 
    if(_linesCounterListener != null) _linesCounterListener.updateCountLines(_countLines); 
} 

} 

// LinesCounterFragment

public class LinesCounterFragment extends Fragment implements LinesCounterListener{ 

private TextView textView; 
private DrawerLines drawerLines; 

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View rootView = inflater.inflate(R.layout.lines_counter_fragment, container, false); 
    textView = (TextView) rootView.findViewById(R.id.textView); 
    drawerLines = (DrawerLines) rootView.findViewById(R.id.drawerLines); 
    drawerLines.addCountLinesListener(this); 
    return rootView; 
} 

@Override 
public void updateCountLines(int count) { 
    textView.setText(String.valueOf(count)); 
} 
} 

// LinesCounterListener

public interface LinesCounterListener { 
    public void updateCountLines(int count); 
} 
+0

'drawerLines = (DrawerLines)rootView.findViewById(R.id.drawerLines);'你在那里选择哪个id? – gewhjhfkgad 2014-09-22 14:05:56

相关问题