Android Can';不要在TileView上使用OnClickListener
我正在使用该项目来显示大图像并在其上添加标记,在android中,它工作得很好,只是当我在视图上放置OnClickListener不工作时,我使用下面的代码:Android Can';不要在TileView上使用OnClickListener,android,onclicklistener,Android,Onclicklistener,我正在使用该项目来显示大图像并在其上添加标记,在android中,它工作得很好,只是当我在视图上放置OnClickListener不工作时,我使用下面的代码: public class MainActivity extends ActionBarActivity implements OnClickListener { TileView tileView; @Override protected void onCreate(Bundle savedInstanceState) {
public class MainActivity extends ActionBarActivity implements OnClickListener {
TileView tileView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tileView = new TileView(this);
tileView.setSize( 1066, 678 );
tileView.addDetailLevel( 1.000f, "arc/tiles/arc-%col%_%row%.png", "arc/arc.png");
tileView.setClickable(true);
setContentView( tileView );
tileView.setOnClickListener(this);
}
@Override
public void onClick(View view) {
// thing to do
}
要使OnClickListener工作,我应该做些什么?您需要获取访问onclick的视图id
@Override
public void onClick(View view) {
int viewId = view.getId();
switch (viewId) {
case R.id.button_id:
//do smthing
break;
default:
break;
}
}
TileView
显然定义了一个tileviewventlistener
接口和addtileviewventlistener()
方法。我建议使用这些方法,使用界面的onFingerDown()
和/或onFingerUp()
方法。我给库的所有者发了一封信,他帮我解决了这个问题,
就像oguzhand建议的那样,我必须使用TileViewEventListener
下面的代码运行良好(由库TileView的所有者提出)
}你说的“不起作用”是什么意思?它会崩溃吗?您是否设置了断点或登录该断点以查看其是否已到达?单击“小提示”时不会发生任何情况:您可以删除此位“setContentView(R.layout.activity_main);”。无论如何,它都会被覆盖
tileView.addTileViewEventListener( listener );
...
private TileViewEventListenerImplementation listener = new TileViewEventListenerImplementation(){
public void onTap( int x, int y ) {
Log.d( "DEBUG", "tapped" );
}