【Arcgis android】 离线编辑实现及一些代码段
Arcgis android 离线编辑实现及一些代码段
底图添加
private String path="file:///mnt/sdcard/data/chinasimple.tpk";
mMapView = (MapView)findViewById(R.id.maplocal);
mMapView.addLayer(new ArcGISLocalTiledLayer(path));
<com.esri.android.map.MapView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/maplocal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
看一看menu.add方法的参数: |
菜单
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
// getMenuInflater().inflate(R.menu.offlinepreferences, menu);
menu.add(0, 1, 1, "设置");
menu.add(0, 2, 2, "退出");
return super.onCreateOptionsMenu(menu);
}
事件监听
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
if(item.getItemId() == 1){
Toast.makeText(EditDemoActivity.this, "shezhi", Toast.LENGTH_SHORT).show();
}
else if(item.getItemId() == 2){
finish();
}
return true;
}
去掉标题栏
android:theme="@android:style/Theme.NoTitleBar"
加入进度条右上角
this.requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
setProgressBarIndeterminateVisibility(false);//设置为不显示
添加tab栏及自定义
private void addTab() {
tabHost=(TabHost)findViewById(R.id.tabhost);
tabHost.setup();
tabSpec1=tabHost.newTabSpec("tab1");
tabSpec1.setContent(R.id.tab1);
tabSpec1.setIndicator("下载");
tabHost.addTab(tabSpec1);
tabSpec2=tabHost.newTabSpec("tab2");
tabSpec2.setContent(R.id.tab2);
tabSpec2.setIndicator("编辑");
tabHost.addTab(tabSpec2);
tabSpec3=tabHost.newTabSpec("tab2");
tabSpec3.setContent(R.id.tab3);
tabSpec3.setIndicator("同步");
tabHost.addTab(tabSpec3);
TabWidget tWidget=tabHost.getTabWidget();
for (int i=0;i<tWidget.getChildCount();i++)
{
View view=tWidget.getChildAt(i);
view.getLayoutParams().height=70;
final TextView tv = (TextView) view.findViewById(android.R.id.title);
tv.setTextSize(20);//设置字体高度
}
}
featureLayer显示的3中模式
MODE.ONDEMAND 仅显示当前范围
MODE.SELECTION选中时显示
MODE.SNAPSHOT显示所有
Mapview的注意事项
Notice that the MapView inherits directly from
Android's ViewGroup. Therefore, the MapView class inherits all the methods and
properties from the ViewGroup and is very similar to working with other Android
views. To make the MapView functional, it must have at least one Layer
as its child. In general, the MapView is the parent of all Layer
children.
资料
http://blog.csdn.net/arcgis_all/article/details/8233027
【技术直通车】ArcGIS for Android离线数据编辑实现原理
利用ArcGIS Server REST API实现对Feature的编辑操作