当前位置: 首页 > news >正文

乌海市住房城乡建设厅网站微九州合作网站

乌海市住房城乡建设厅网站,微九州合作网站,企业微信登录,建筑公司网站页面图片事实上#xff0c;有一种方法可以做到这一点。即使没有实施自己的ActionBar。看看hierachyviewer吧#xff01;(位于工具目录中)还有的DecorView#xff0c;并且LinearLayout作为一个孩子。这LinearLayout包含ActionBar其他内容和其他内容。所以#xff0c;你可以简单地应用…事实上有一种方法可以做到这一点。即使没有实施自己的ActionBar。看看hierachyviewer吧(位于工具目录中)还有的DecorView并且LinearLayout作为一个孩子。这LinearLayout包含ActionBar其他内容和其他内容。所以你可以简单地应用一些FrameLayout.LayoutParamsLinearLayout并以这种方式在左侧获得一些空间。然后您可以使用菜单ListView填充此空间并使用FrameLayout覆盖其他内容当单击它时折叠菜单。所以这里有一些代码首先折叠/扩展类(SlideMenu.java)package your.cool.app;import android.app.Activity;import android.content.Context;import android.content.Intent;import android.graphics.Rect;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.view.Window;import android.view.animation.TranslateAnimation;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ArrayAdapter;import android.widget.FrameLayout;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.ListView;import android.widget.TextView;public class SlideMenu {//just a simple adapterpublic static class SlideMenuAdapter extends ArrayAdapter {Activity act;SlideMenu.SlideMenuAdapter.MenuDesc[] items;class MenuItem {public TextView label;public ImageView icon;}static class MenuDesc {public int icon;public String label;}public SlideMenuAdapter(Activity act, SlideMenu.SlideMenuAdapter.MenuDesc[] items) {super(act, R.id.menu_label, items);this.act  act;this.items  items;}Overridepublic View getView(int position, View convertView, ViewGroup parent) {View rowView  convertView;if (rowView  null) {LayoutInflater inflater  act.getLayoutInflater();rowView  inflater.inflate(R.layout.menu_listitem, null);MenuItem viewHolder  new MenuItem();viewHolder.label  (TextView) rowView.findViewById(R.id.menu_label);viewHolder.icon  (ImageView) rowView.findViewById(R.id.menu_icon);rowView.setTag(viewHolder);}MenuItem holder  (MenuItem) rowView.getTag();String s  items[position].label;holder.label.setText(s);holder.icon.setImageResource(items[position].icon);return rowView;}}private static boolean menuShown  false;private static View menu;private static LinearLayout content;private static FrameLayout parent;private static int menuSize;private static int statusHeight  0;private Activity act;SlideMenu(Activity act) {this.act  act;}//call this in your onCreate() for screen rotationpublic void checkEnabled() {if(menuShown)this.show(false);}public void show() {//get the height of the status barif(statusHeight  0) {Rect rectgle  new Rect();Window window  act.getWindow();window.getDecorView().getWindowVisibleDisplayFrame(rectgle);statusHeight  rectgle.top;}this.show(true);}public void show(boolean animate) {menuSize  Functions.dpToPx(250, act);content  ((LinearLayout) act.findViewById(android.R.id.content).getParent());FrameLayout.LayoutParams parm  (FrameLayout.LayoutParams) content.getLayoutParams();parm.setMargins(menuSize, 0, -menuSize, 0);content.setLayoutParams(parm);//animation for smooth slide-outTranslateAnimation ta  new TranslateAnimation(-menuSize, 0, 0, 0);ta.setDuration(500);if(animate)content.startAnimation(ta);parent  (FrameLayout) content.getParent();LayoutInflater inflater  (LayoutInflater) act.getSystemService(Context.LAYOUT_INFLATER_SERVICE);menu  inflater.inflate(R.layout.menu, null);FrameLayout.LayoutParams lays  new FrameLayout.LayoutParams(-1, -1, 3);lays.setMargins(0,statusHeight, 0, 0);menu.setLayoutParams(lays);parent.addView(menu);ListView list  (ListView) act.findViewById(R.id.menu_listview);list.setOnItemClickListener(new OnItemClickListener() {Overridepublic void onItemClick(AdapterView parent, View view, int position, long id) {//handle your menu-click}});if(animate)menu.startAnimation(ta);menu.findViewById(R.id.overlay).setOnClickListener(new OnClickListener() {Overridepublic void onClick(View v) {SlideMenu.this.hide();}});Functions.enableDisableViewGroup((LinearLayout) parent.findViewById(android.R.id.content).getParent(), false);((ExtendedViewPager) act.findViewById(R.id.viewpager)).setPagingEnabled(false);((ExtendedPagerTabStrip) act.findViewById(R.id.viewpager_tabs)).setNavEnabled(false);menuShown  true;this.fill();}public void fill() {ListView list  (ListView) act.findViewById(R.id.menu_listview);SlideMenuAdapter.MenuDesc[] items  new SlideMenuAdapter.MenuDesc[5];//fill the menu-items hereSlideMenuAdapter adap  new SlideMenuAdapter(act, items);list.setAdapter(adap);}public void hide() {TranslateAnimation ta  new TranslateAnimation(0, -menuSize, 0, 0);ta.setDuration(500);menu.startAnimation(ta);parent.removeView(menu);TranslateAnimation tra  new TranslateAnimation(menuSize, 0, 0, 0);tra.setDuration(500);content.startAnimation(tra);FrameLayout.LayoutParams parm  (FrameLayout.LayoutParams) content.getLayoutParams();parm.setMargins(0, 0, 0, 0);content.setLayoutParams(parm);Functions.enableDisableViewGroup((LinearLayout) parent.findViewById(android.R.id.content).getParent(), true);((ExtendedViewPager) act.findViewById(R.id.viewpager)).setPagingEnabled(true);((ExtendedPagerTabStrip) act.findViewById(R.id.viewpager_tabs)).setNavEnabled(true);menuShown  false;}}一些帮助方法(对我来说在静态Functions.java中)public static int dpToPx(int dp, Context ctx) {Resources r  ctx.getResources();return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, r.getDisplayMetrics());}//originally: http://stackoverflow.com/questions/5418510/disable-the-touch-events-for-all-the-views//modified for the needs herepublic static void enableDisableViewGroup(ViewGroup viewGroup, boolean enabled) {int childCount  viewGroup.getChildCount();for (int i  0; i View view  viewGroup.getChildAt(i);if(view.isFocusable())view.setEnabled(enabled);if (view instanceof ViewGroup) {enableDisableViewGroup((ViewGroup) view, enabled);} else if (view instanceof ListView) {if(view.isFocusable())view.setEnabled(enabled);ListView listView  (ListView) view;int listChildCount  listView.getChildCount();for (int j  0; j if(view.isFocusable())listView.getChildAt(j).setEnabled(false);}}}}然后布局菜单布局(res / layout / menu.xml)android:layout_widthfill_parentandroid:layout_heightfill_parent android:orientationverticalandroid:layout_heightfill_parentandroid:layout_width250dipandroid:backgroundcolor/darkblackandroid:idid/menu_listviewandroid:layout_widthfill_parentandroid:layout_heightwrap_contentandroid:dividercolor/dividerblackandroid:dividerHeight2dip  /android:idid/overlayandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent listitems的布局(res / layout / menu_listitem.xml)android:idid/menu_iconandroid:layout_width30dpandroid:layout_height30dpandroid:layout_marginRight5dipandroid:layout_marginLeft10dipandroid:layout_marginTop10dipandroid:layout_marginBottom10dip /android:idid/menu_labelandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:textColorcolor/whiteandroid:textSize24dpandroid:layout_marginTop10dipandroid:layout_marginBottom10dip /如何使用它在你的onCreate()private SlideMenu slidemenu;Overridepublic void onCreate(Bundle savedInstanceState) {//your onCreate codeslidemenu  new SlideMenu(this);slidemenu.checkEnabled();}在ActionBar homebutton的处理程序中slidemenu.show();而已现在它的一些屏幕截图据我所知它正在发挥作用。如果您遇到任何问题或我的解释不明确请与我联系编辑ExtendedViewPagerExtendedPagerStripExtendedViewPagerpackage your.cool.app;//source: http://blog.svpino.com/2011/08/disabling-pagingswiping-on-android.htmlimport android.content.Context;import android.support.v4.view.ViewPager;import android.util.AttributeSet;import android.view.MotionEvent;public class ExtendedViewPager extends ViewPager {private boolean enabled;public ExtendedViewPager(Context context, AttributeSet attrs) {super(context, attrs);this.enabled  true;}Overridepublic boolean onTouchEvent(MotionEvent event) {if (this.enabled) {return super.onTouchEvent(event);}return false;}Overridepublic boolean onInterceptTouchEvent(MotionEvent event) {if (this.enabled) {return super.onInterceptTouchEvent(event);}return false;}public void setPagingEnabled(boolean enabled) {this.enabled  enabled;}}ExtendedPagerTabStrippackage your.cool.app;//source: http://blog.svpino.com/2011/08/disabling-pagingswiping-on-android.htmlimport android.content.Context;import android.support.v4.view.PagerTabStrip;import android.util.AttributeSet;import android.view.MotionEvent;public class ExtendedPagerTabStrip extends PagerTabStrip {private boolean enabled;public ExtendedPagerTabStrip(Context context, AttributeSet attrs) {super(context, attrs);this.enabled  true;}Overridepublic boolean onTouchEvent(MotionEvent event) {if (this.enabled) {return super.onTouchEvent(event);}return false;}Overridepublic boolean onInterceptTouchEvent(MotionEvent event) {if (this.enabled) {return super.onInterceptTouchEvent(event);}return false;}public void setNavEnabled(boolean enabled) {this.enabled  enabled;}}我将它SlideMenu用于一个ViewPager带有PagerTabStripfor如TalkMarket等标签的Activity 。你不能以一种简单的方式禁用这些视图所以上面的两个类只是扩展它们以onTouch在禁用时停止事件。
http://wiki.neutronadmin.com/news/346562/

相关文章:

  • 手机360网站seo优化最流行的网站开发语言
  • 电影网站建设哪家便宜网页类界面图片
  • 网站被拔毛的原因中国大宗交易平台
  • 小型企业网站排名前十如何用word做网站地图
  • 在线免费域名网站解析微信公众号运营全攻略
  • 长沙网站开发设计怎样做网站首页
  • 模具机械东莞网站建设哪些公司做app开发
  • 网站的可视化设计诸城做网站收费
  • 做网站需要多少钱济宁程序员招聘
  • 东莞网站建设模具二手站网站怎做
  • 专业的国内网站建设公司企业网站ppt怎么做
  • 自适应网站模板下载大型茶叶网站建设
  • 网站底部图标小程序源码怎么导入
  • 济南企业网站推广国外购物平台
  • 商城火车站专题网站开发工具
  • 驻马店网站建设zmdsem在线建站网站
  • html写手机网站吗广州网络推广服务
  • 单位建设一个网站的费用wordpress 地址插件
  • wordpress主题dedecms网站专业优化公司
  • 洪湖网站建设上海seo公司推荐
  • 深圳专业网站建设制作价格江门网站制作计划
  • 新乡哪有网站建设公司山东做网站建设公司排名
  • wordpress站长统计代码铸铁加工平台
  • icp备案查询网站优化推广
  • 小地方做外卖网站怎样江门建站模板搭建
  • 浪琴手表网站买网站做设计参考属于什么费用
  • wordpress建立仿站微信分享网站显示图片
  • 上海高端网站建设如何查询企业联系方式
  • 徐闻网站开发公司网站如何做淘宝支付
  • 电线电缆做销售哪个网站好wordpress手机如何登陆