2009-05-27 75 views
0

我有一个FrameLayout视图,其中包含一个(类似MapView的)控件和一些覆盖它的其他按钮。 (布局xml在下面)。如何控制Android视图中的轨迹球行为?

我想允许用户平移/不仅使用触摸而且轨迹球滚动主视图。 问题是 - 采用了轨迹球刚接通布局的所有控件之间的焦点,而我似乎无法找到一种方法来包含onTrackballEvent到刚刚的MainView。

欢迎任何建议,在此先感谢。

<?xml version="1.0" encoding="utf-8"?> 

<merge xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" android:layout_height="fill_parent"> 
<FrameLayout android:id="@+id/pageView" 
    xmlns:panel="http://schemas.android.com/apk/res/com.yappa" 
     xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 

    <MainView 
     android:id="@+id/mainView" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"> 
    </MainView> 


    <ZoomControls android:id="@+id/ZoomControls01" 
     android:layout_gravity="bottom|center" 
     android:layout_height="wrap_content" android:layout_width="wrap_content"> 
    </ZoomControls> 

    <Panel 
      .... 
    </Panel> 

</FrameLayout> 

</merge> 
+0

你有没有试过玩过`android:focusable`属性? – Ari 2009-07-01 03:17:16

+0

可控焦点控制你如何从一个控件转到另一个控件。不是我的问题,意味着 – reflog 2009-08-09 10:45:36

回答

1

诀窍是覆盖您的自定义视图中的dispatchTrackball并获取事件。

我希望这可以帮助别人。

0

摇摄简单地由可聚焦属性之前提到实施,将您的MapView可获得焦点属性为true,它的确会平移地图轨迹球当你放置的MapView焦点。