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

济南公司网站建设价格唐山市建设网站

济南公司网站建设价格,唐山市建设网站,商业平台网站开发,如何在wordpress里应用知更鸟主题原文地址#xff1a;http://android.xsoftlab.net/training/multiscreen/adaptui.html 基于程序当前所显示的布局来说#xff0c;UI流程可能会有所不同。比如说#xff0c;如果程序当前处于多面板模式#xff0c;点击左面板中的项目会直接在右面版中显示具体的内容;如果当…原文地址http://android.xsoftlab.net/training/multiscreen/adaptui.html 基于程序当前所显示的布局来说UI流程可能会有所不同。比如说如果程序当前处于多面板模式点击左面板中的项目会直接在右面版中显示具体的内容;如果当前是单面板模式那么具体的内容则会在新的页面中显示。 检查当前的布局 因为每种布局的实现可能会有所不同所以首先要做的事情就是检查用户当前使用的是哪种布局。比如说你可能需要知道用户当前处于”单面板”模式还是”多面板”模式。你可以通过查询给定的View是否存在及是否可见的方式来得知当前的模式。 public class NewsReaderActivity extends FragmentActivity {boolean mIsDualPane;Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main_layout);View articleView findViewById(R.id.article);mIsDualPane articleView ! null articleView.getVisibility() View.VISIBLE;} } 注意这部分代码在查询”article”面板是否可用这要比查询指定布局的方式要灵活的多。 如何适配不同的组件的另一个示例是通过检查这些组件是否可用的方式来完成的。比如说在新闻阅读APP中有一个用于打开菜单的按钮但是这个按钮只在3.0以上的版本才有。所以如果要为这个按钮添加监听器你可以这么做 Button catButton (Button) findViewById(R.id.categorybutton); OnClickListener listener /* create your listener here */; if (catButton ! null) {catButton.setOnClickListener(listener); } 根据当前的布局做出响应 一些行为可能基于当前的布局产生不同的结果。比如说在新闻阅读APP中点击任意一条新闻标题在多面板模式中具体文章则会出现在右面板中但是在单面板模式中则会启动一个新的Activity来显示这些文章。 Override public void onHeadlineSelected(int index) {mArtIndex index;if (mIsDualPane) {/* display article on the right pane */mArticleFragment.displayArticle(mCurrentCat.getArticle(index));} else {/* start a separate activity */Intent intent new Intent(this, ArticleActivity.class);intent.putExtra(catIndex, mCatIndex);intent.putExtra(artIndex, index);startActivity(intent);} } 同样的如果APP当前处于多面板模式那么应该设置带有tab的ActionBar用于导航然而在单面板模式下就应当设置带有spinner的导航控件。所以代码中还应当检查当前是哪种情况 final String CATEGORIES[] { Top Stories, Politics, Economy, Technology }; public void onCreate(Bundle savedInstanceState) {....if (mIsDualPane) {/* use tabs for navigation */actionBar.setNavigationMode(android.app.ActionBar.NAVIGATION_MODE_TABS);int i;for (i 0; i CATEGORIES.length; i) {actionBar.addTab(actionBar.newTab().setText(CATEGORIES[i]).setTabListener(handler));}actionBar.setSelectedNavigationItem(selTab);}else {/* use list navigation (spinner) */actionBar.setNavigationMode(android.app.ActionBar.NAVIGATION_MODE_LIST);SpinnerAdapter adap new ArrayAdapter(this, R.layout.headline_item, CATEGORIES);actionBar.setListNavigationCallbacks(adap, handler);} } 重用Fragment 在设计多面板的应用时会反复出现的一个场景有一部分UI在一种屏幕配置中以面板的形式出现而在其它的配置中又是以独立的Activity出现。 在类似这种情况下你可以通过重用Fragment的方式来避免代码冗余。比如ArticleFragment就用于多面板的情况 LinearLayout xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:layout_widthfill_parentandroid:layout_heightfill_parentandroid:orientationhorizontalfragment android:idid/headlinesandroid:layout_heightfill_parentandroid:namecom.example.android.newsreader.HeadlinesFragmentandroid:layout_width400dpandroid:layout_marginRight10dp/fragment android:idid/articleandroid:layout_heightfill_parentandroid:namecom.example.android.newsreader.ArticleFragmentandroid:layout_widthfill_parent / /LinearLayout 在小屏幕中又被Activity重用: ArticleFragment frag new ArticleFragment(); getSupportFragmentManager().beginTransaction().add(android.R.id.content, frag).commit(); 上面的代码与在XML布局中声明Fragment含有相同的效果但是这种情况下XML布局就没必要工作了因为article Fragment作为了这个Activity的组件。 一个非常重要的点要记住在设计Fragment时不要与指定的Activity产生强耦合。你可以通过定义接口的方式来使Fragment与宿主Activity产生交互宿主Activity需要实现这个接口 public class HeadlinesFragment extends ListFragment {...OnHeadlineSelectedListener mHeadlineSelectedListener null;/* Must be implemented by host activity */public interface OnHeadlineSelectedListener {public void onHeadlineSelected(int index);}...public void setOnHeadlineSelectedListener(OnHeadlineSelectedListener listener) {mHeadlineSelectedListener listener;} } 因此当用户选择了一条新闻时Fragment通过接口的方式来通知宿主Activity: public class HeadlinesFragment extends ListFragment {...Overridepublic void onItemClick(AdapterView? parent, View view, int position, long id) {if (null ! mHeadlineSelectedListener) {mHeadlineSelectedListener.onHeadlineSelected(position);}}... } 处理屏幕配置变更 如果使用了单独的Activity实现了UI的独立部分那么要记得响应某些配置的变化比如屏幕旋转以便保持UI的一致性。 比如说一款运行Android 3.0系统的7英寸平板新闻阅读APP在垂直模式下使用的是独立的Activity展示文章的内容但是在水平模式下使用的是多面板模式。 如果用户当前处于垂直模式下那么需要检查方向更改为了水平模式并需要通过结束结尾Activity并返回MainActivity的方式来让内容展示于双面板模式 public class ArticleActivity extends FragmentActivity {int mCatIndex, mArtIndex;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);mCatIndex getIntent().getExtras().getInt(catIndex, 0);mArtIndex getIntent().getExtras().getInt(artIndex, 0);// If should be in two-pane mode, finish to return to main activityif (getResources().getBoolean(R.bool.has_two_panes)) {finish();return;}... }
http://www.huolong8.cn/news/45374/

相关文章:

  • 无锡专业网站营销凡客tv
  • 下载网站的软件茶叶公司商城网站建设
  • 金融适合什么颜色做网站广告公司经营范围有哪些内容
  • 百度怎么做公司的网站桂林楼盘网
  • 网站怎么防kwordpress 整合ck
  • 网站开发的硬件设备南通 外贸建站
  • 泰州建站程序东莞网站建设服务
  • 北京市地铁建设公司网站如何做平台推广
  • 新浪微博可以做网站吗免费软件下载网站入口
  • 想自己做网站该学些什么网站建设服务费怎么写分录
  • 向网站服务器上传网页文件下载乐清本地网
  • 剑三做月饼活动网站7zwd一起做网店官网
  • 学校门户网站建设上海网站开发技术最好公司
  • layui做网站前端服装网站建设如何解决
  • 恩施做网站公司网站开发人员应具备什么素质
  • 手机网站技巧电子商务考研可以考什么专业
  • 做装饰公司网站6网站建设培训 通州
  • 湛江市政工程建设公司网站网站建设模板源码特效
  • 网站建设的规划书怎么免费建设网站
  • 设计一套网站多少钱简述如何对网站进行推广?
  • 太湖县网站建设公司视频素材网站大全免费
  • 网站怎么做免费推广济南mip网站建设
  • 凡科建站平台wordpress图片优化插件
  • 自己做的网站图片挡住了导航栏沈阳市三好街网站建设公司
  • 保健品网站建设方案书模板如何解决wordpress后台慢的问题
  • 贵州网站建设费用怎么把网站的标题做的炫酷
  • 在互联网上建设网站可选择的方案有网站建设的公司资质
  • 进一步加强网站建设wordpress答题插件
  • 软文怎么优化网站焦作专业做网站公司哪家好
  • 网站建设的具体任务有哪些方面建立网站容量