我花了好几天试图让它工作,阅读数百个相关的StackOverflow页面并实现所有可能的建议解决方案但没有成功,包括......
1)view.scrollTo(gridX, gridY);
2)view.scrollBy(gridX,gridY);
3)
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(1405, 1158);
params.leftMargin = gridX;
params.topMargin = gridY;
view.setLayoutParams(params);
4)矩阵操作......
5)我需要我的应用程序 min sdk为8 / 2.2 ,所以我无法实现:
view.setScrollX(gridX);
view.setScrollY(gridY);
6)以及更多...
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.madDucks.wheretheulami.madducks.UL_Map">
<TextView
android:id="@+id/infoBox"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_centerInParent="true"
android:background="#000"
android:clickable="true"
android:onClick="infoBox"
android:paddingBottom="3sp"
android:textColor="#fff"
android:textSize="14sp"
android:textStyle="bold"/>
<HorizontalScrollView
android:id="@+id/scrollView"
android:layout_below="@+id/infoBox"
android:layout_above="@+id/bottomBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ScrollView
android:id="@+id/scroller"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RelativeLayout
android:id="@+id/mapLayer"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/ulmap"
android:isScrollContainer="true"
android:layout_height="1158dp"
android:layout_width="1405dp"
android:scrollX="@dimen/activity_horizontal_margin"
android:scrollbars="horizontal"
android:src="@drawable/ulcampusmap"/>
</RelativeLayout>
</ScrollView>
</HorizontalScrollView>
<RelativeLayout
android:id="@+id/bottomBar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#000"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<Button
android:id="@+id/changeDestination"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:background="#000"
android:clickable="true"
android:onClick="changeDestination"
android:paddingTop="4sp"
android:text="@string/changeDestination"
android:textColor="#fff"
android:textSize="14sp"
android:textStyle="bold"/>
<Button
android:id="@+id/viewMyLocation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:background="#000"
android:clickable="true"
android:onClick="viewMyLocation"
android:paddingTop="4sp"
android:text="@string/myLocation"
android:textColor="#fff"
android:textSize="14sp"
android:textStyle="bold"/>
</RelativeLayout>
</RelativeLayout>
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ul_map);
view = (ImageView) findViewById(R.id.map);
view.setImageResource(R.drawable.ulmap);
为什么这些都不起作用?当然,即使有些人不胜,但大多数人都不应该这样做。
我管理的最接近的是view.scrollTo(gridX, gridY);
,它将任何x,y输入放在topLeft 0,0,然后剪裁地图,x左边或左边的任何内容都是无法访问的。
我应该使用其他方法吗?我非常感谢任何建议。
谢谢:)
答案 0 :(得分:0)
请使用AbsoluteLayout并设置xy位置(AbsoluteLayout具有设置xy位置的属性)
并将您的imageview放入其中。