
但是当扩展我的主ActionbarSherlock类时,它缺少了很多用于menthod的lib(比如:findVIEwByID,getSupportActionbar ..)
这是我的ActionbarSherlock
public class featuretoggles extends SherlockMapFragment { private static final Random RANDOM = new Random(); private int items = 0; @OverrIDe public boolean onCreateOptionsMenu(Menu menu){ for(int i = 0; i < items; i++) { menu.add("Text").setIcon(R.drawable.ic_Title_share_default).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT); } return super.onCreateOptionsMenu(menu); } @OverrIDe public voID onCreate(Bundle savedInstanceState){ set@R_419_5969@(R.style.@R_419_5969@_Sherlock); // Used for @R_419_5969@ switching in samples requestwindowFeature(Window.FEATURE_PROGRESS); requestwindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); super.onCreate(savedInstanceState); setContentVIEw(R.layout.feature_toggles); setSupportProgressbarIndeterminateVisibility(false); setSupportProgressbarVisibility(false); getSupportActionbar().setCustomVIEw(R.layout.custom_vIEw); getSupportActionbar().setdisplayShowCustomEnabled(false); Context context = getSupportActionbar().get@R_419_5969@dContext(); ArrayAdapter<CharSequence> listadapter = ArrayAdapter.createFromresource(context,R.array.locations,R.layout.sherlock_spinner_item); listadapter.setDropDownVIEwResource(R.layout.sherlock_spinner_dropdown_item); getSupportActionbar().setListNavigationCallbacks(listadapter,null);// if (savedInstanceState == null) {// // Do first time initialization -- add initial fragment.// Fragment newFragment = CountingFragment.newInstance(mStackLevel);// FragmentTransaction ft = getSupportFragmentManager().beginTransaction();// ft.add(R.ID.simple_fragment,newFragment).commit();// } else {// mStackLevel = savedInstanceState.getInt("level");// } // // findVIEwByID(R.ID.new_fragment).setonClickListener(new VIEw.OnClickListener() {// public voID onClick(VIEw v){// addFragmentToStack();// }// }); findVIEwByID(R.ID.btnMap).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw v){ Intent i = new Intent(getApplicationContext(),GoogleActivityV2.class); startActivity(i); } }); findVIEwByID(R.ID.display_progress_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw v){ setSupportProgressbarVisibility(true); setSupportProgressbarIndeterminateVisibility(false); setSupportProgress(RANDOM.nextInt(8000) + 10); } }); findVIEwByID(R.ID.display_progress_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw v){ setSupportProgressbarVisibility(false); } }); findVIEwByID(R.ID.display_iprogress_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw v){ // Hack to hIDe the regular progress bar setSupportProgress(Window.PROGRESS_END); setSupportProgressbarIndeterminateVisibility(true); } }); findVIEwByID(R.ID.display_iprogress_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw v){ setSupportProgressbarIndeterminateVisibility(false); } }); findVIEwByID(R.ID.display_items_clear).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw v){ items = 0; invalIDateOptionsMenu(); } }); findVIEwByID(R.ID.display_items_add).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw v){ items += 1; invalIDateOptionsMenu(); } }); findVIEwByID(R.ID.display_subTitle_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setSubTitle("The quick brown fox jumps over the lazy dog."); } }); findVIEwByID(R.ID.display_subTitle_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setSubTitle(null); } }); findVIEwByID(R.ID.display_Title_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayShowTitleEnabled(true); } }); findVIEwByID(R.ID.display_Title_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayShowTitleEnabled(false); } }); findVIEwByID(R.ID.display_custom_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayShowCustomEnabled(true); } }); findVIEwByID(R.ID.display_custom_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayShowCustomEnabled(false); } }); findVIEwByID(R.ID.navigation_standard).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setNavigationMode(Actionbar.NAVIGATION_MODE_STANDARD); } }); findVIEwByID(R.ID.navigation_List).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setNavigationMode(Actionbar.NAVIGATION_MODE_List); } }); findVIEwByID(R.ID.navigation_tabs).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setNavigationMode(Actionbar.NAVIGATION_MODE_TABS); } }); findVIEwByID(R.ID.display_home_as_up_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayHomeAsUpEnabled(true); } }); findVIEwByID(R.ID.display_home_as_up_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayHomeAsUpEnabled(false); } }); findVIEwByID(R.ID.display_logo_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayUselogoEnabled(true); } }); findVIEwByID(R.ID.display_logo_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayUselogoEnabled(false); } }); findVIEwByID(R.ID.display_home_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayShowHomeEnabled(true); } }); findVIEwByID(R.ID.display_home_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().setdisplayShowHomeEnabled(false); } }); findVIEwByID(R.ID.display_actionbar_show).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().show(); } }); findVIEwByID(R.ID.display_actionbar_hIDe).setonClickListener(new VIEw.OnClickListener() { public voID onClick(VIEw vIEw){ getSupportActionbar().hIDe(); } }); } public voID onTabSelected(Tab tab,FragmentTransaction transaction){ } public voID onTabUnselected(Tab tab,FragmentTransaction transaction){ } public voID onTabReselected(Tab tab,FragmentTransaction transaction){ }}解决方法 以下是我使用完整屏幕地图的方法(请注意,在您的选项卡中的片段内使用GoogleMap API V2会在您滑动时添加一些令人难以置信的黑色边距,这是一个API问题所以……): 地图片段的布局:
<?xml version="1.0" enCoding="utf-8"?><fragment xmlns:androID="http://schemas.androID.com/apk/res/androID" xmlns:tools="http://schemas.androID.com/tools" androID:ID="@+ID/map" androID:layout_wIDth="match_parent" androID:layout_height="match_parent" />
地图的一个类(可以用来做一些纠正API错误的东西……)
public class transparentSupportMapFragment extends SupportMapFragment { public transparentSupportMapFragment() { super(); } @OverrIDe public VIEw onCreateVIEw(LayoutInflater inflater,VIEwGroup vIEw,Bundle savedInstance) { VIEw layout = super.onCreateVIEw(inflater,vIEw,savedInstance); FrameLayout frameLayout = new FrameLayout(getActivity()); frameLayout.setBackgroundcolor(getResources().getcolor(androID.R.color.transparent)); ((VIEwGroup) layout).addVIEw(frameLayout,new VIEwGroup.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT)); return layout; }} FragmentActivity(或SherlockFragmentActivity)
public class ActivityGoogleMap extends SherlockFragmentActivity{ GoogleMap _GoogleMap; protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_maps); // abs Actionbar bar = getSupportActionbar(); bar.setTitle(R.string.tle_abs); bar.setdisplayHomeAsUpEnabled(true); // map _GoogleMap = ((transparentSupportMapFragment) getSupportFragmentManager().findFragmentByID((R.ID.map))).getMap();} 没有动画的简单过渡:
Intent intent = new Intent(this,ActivityGoogleMap.class);startActivity(intent);
现在为清单工作:
OpenGLES2:
<uses-feature androID:glEsversion="0x00020000" androID:required="true" />
一些权限:
<permission androID:name="com.egdigital.appetablissement.permission.MAPS_RECEIVE" androID:protectionLevel="signature" /> <uses-permission androID:name="androID.permission.INTERNET" /><!-- GPS LOCATION --> <uses-permission androID:name="androID.permission.ACCESS_GPS" /> <uses-permission androID:name="androID.permission.ACCESS_ASSISTED_GPS" /> <uses-permission androID:name="androID.permission.ACCESS_MOCK_LOCATION" /> <uses-permission androID:name="androID.permission.ACCESS_FINE_LOCATION" /> <uses-permission androID:name="androID.permission.ACCESS_LOCATION" /> <uses-permission androID:name="androID.permission.ACCESS_COARSE_LOCATION" />
应用程序中的API密钥:
<Meta-data androID:name="com.Google.androID.maps.v2.API_KEY" androID:value="HERE_THE_KEY" />
你的MapActivity:
<activity androID:name=".ActivityGoogleMap" androID:configChanges="orIEntation" androID:label="@string/app_name" ></activity>
希望它会有所帮助祝好运
总结以上是内存溢出为你收集整理的android – 将ActionBarSherlock与Google Maps API V2一起使用全部内容,希望文章能够帮你解决android – 将ActionBarSherlock与Google Maps API V2一起使用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)