首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何让fragment拾取肖像视图

如何让fragment拾取肖像视图
EN

Stack Overflow用户
提问于 2014-02-27 16:20:30
回答 1查看 119关注 0票数 1

我的手机应用程序有一个主视图和向右滑动时的高级功能视图的寻呼机,在横向模式下,它有一个略微修改的版本,以适应横向。

现在我必须制作平板电脑的用户界面,我想在一个屏幕上显示两个视图,我已经成功地显示了它们,但在横向模式下的平板电脑正在从布局区域而不是纵向布局中拾取碎片,我需要它来挑选纵向的碎片并排显示。

我如何让片段选择肖像版本,即使平板电脑在横向,也不会创建重复的布局?

我的片段看起来像这样

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class PremiumFragment extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        ViewGroup premiumView = (ViewGroup) inflater.inflate(
                R.layout.premium_features, container, false);
        return premiumView;
    }
    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        Log.d(TAG, "onView created ran");
        Intent intent = new Intent("setup");
        LocalBroadcastManager.getInstance(getBaseContext()).sendBroadcast(intent);

    }
}
EN

回答 1

Stack Overflow用户

发布于 2017-09-08 15:20:51

已经有一段时间了,但对于任何对这件事感兴趣的人来说:

如果我理解正确的话,你需要有一个纵向布局,一个横向布局(例如移动设备)和一个与纵向布局相匹配的不同的平板电脑横向布局。这里面没有那么多的欺骗。您可以在合格的布局中包含独立的非限定布局。

假设你有这些布局:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
layout-land/my_fragment.xml
layout-port/my_fragment.xml
layout-large-land/my_fragment.xml
layout/my_fragment_content.xml

layout-port/my_Frament.xml:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <include
        layout="@layout/my_fragment_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</FrameLayout >

layout-land/my_fragment.xml:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

   //something completely different

</FrameLayout >

和layout-large-land/my_Frament.xml(内容同纵向):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include
        layout="@layout/my_fragment_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</FrameLayout >

其中涉及的重复性最小,但唯一重要的是,您没有理由接触layout-port/my_fragment.xmllayout-large-land/my_fragment.xml,因为所有重要信息都包含在单个文件layout/my_fragment_content.xml中。

在这篇作者可能已经读过的文章中,对这个主题进行了更彻底的分析:

Android Developers: Building a Flexible UI

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22074276

复制
相关文章
[1118]设置Maven的编译环境为1.8的方法
遇到的问题: 项目默认使用 jdk1.7, 每次 update maven 的时候, 项目都会重新恢复到1.7进行编译, 导致部分使用1.8新特性的代码会报红
周小董
2022/04/13
1K0
[1118]设置Maven的编译环境为1.8的方法
Mac环境变量设置(以ADB为例)
按回车输入密码后用vi打开用户目录下的bash_profile文件。一定要用sudo,否则没权限保存文件。
毛大姑娘
2020/09/10
3.6K0
ProcessBuilder API 使用教程
Java 的 Process API 为开发者提供了执行操作系统命令的强大功能,但是某些 API 方法可能让你有些疑惑,没关系,这篇文章将详细介绍如何使用 ProcessBuilder API 来方便的操作系统命令。
未读代码
2023/09/01
6350
ProcessBuilder API 使用教程
RocketMQ实战:生产环境中,autoCreateTopicEnable为什么不能设置为true
很多网友会问,为什么明明集群中有多台Broker服务器,autoCreateTopicEnable设置为true,表示开启Topic自动创建,但新创建的Topic的路由信息只包含在其中一台Broker服务器上,这是为什么呢?
丁威
2019/06/15
3.2K1
怎么设置pycharm环境_怎么设置环境光影响物体
不舍昼夜在Pycharm前敲打代码,已经是大半年前的事了,而我也大半年没接触Pycharm找个软件了。今天由于项目需要,重新打开犹如一个陌生软件。折腾几分钟才渐渐回忆起那些熟悉的操作,但这几分钟以及在这几分钟前的对于陌生畏惧,以后都想尽力避免罢了。
全栈程序员站长
2022/09/27
3.5K0
怎么设置pycharm环境_怎么设置环境光影响物体
为npm设置代理
npm全称为Node Packaged Modules。它是一个用于管理基于node.js编写的package的命令行工具。其本身就是基于node.js写的,这有点像gem与ruby的关系。
墨文
2020/02/28
23.2K0
DC启动环境设置
  我们按照前面的基本流程使用DC进行设置,但是这里主要使用的是脚本,因此不能一条一条命令进行演示其效果。在启动DC之前,首先要配置DC的启动环境,也就是那些库的设定。配置DC的启动环境主要是.synopsys_dc.setup配置文件的书写。.synopsys_dc.setup这个文件就是DC的配置文件,它配置了DC启动过程中要执行哪些命令、干哪些事。其中,search_path 、target_library...等等(后面会讲,放在这里给大家留个印象),这些是DC内部的变量名称,用来告诉DC做那些事的方法。
数字芯片社区
2020/07/20
2.1K0
DC启动环境设置
BitShares 2.0 环境设置
BitShares 2.0 环境设置 工作环境:Ubuntu 第一步:准备环境与下载 BitShares 2.0  Core 源代码: bitshares-core 见证节点和命令行钱包,C++代码,基于石墨烯区块链。 sudo apt-get update sudo apt-get install autoconf cmake git libboost-all-dev libssl-dev g++ libcurl4-openssl-dev git clone https://github.com/bi
田春峰-JCJC错别字检测
2018/04/16
7960
pycharm 设置环境变量_电脑环境变量怎么设置
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/175266.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/27
4.5K0
pycharm 设置环境变量_电脑环境变量怎么设置
开发环境通用设置
最近IDE有点问题,每次调整完设置的时候都要搜一次,烦了,直接自己记下来。 开发IDE设置保护色 RGB: red:204;green:232;blue:207 十六进制: CCE8CF Mac 设置环境变量 打开配置文件: vi ~/.bash_profile 加入配置并保存: ANDROID_NDK_CMD=/Users/hardyshi/Documents/Library/android-ndk-r9c/ndk-build export ANDROID_ND
子勰
2018/05/22
5770
ubuntu 18.04下Chromium设置为系统设置
在ubuntu 18.04下挂上ss后firefox能直接上gg了但是chromium上不去 会出现下面两种情况
Enterprise_
2019/06/14
2.8K0
ubuntu 18.04下Chromium设置为系统设置
MacOS环境设置笔记
家里只有一台电脑,大家需要一起用时,最好的方法就是使用不同的账户。不同用户的配置相互独立,比如同一个chrome,两个账户收藏夹是独立的,不会相互影响。 但安装应用时,就会发现,应用是不独立的。一个账户安装了应用,其它账户下也能看到。 对此,我们可以在安装的时候注意安装的目录。mac下通常不是windows这种下一步下一步安装,是把程序拖拽到应用文件夹中。 所以我们可以把某些只有自己需要的应用,移动到个人目录下的应用程序文件夹中。 访达打开后,点击上面工具栏的 前往->个人 (快捷键 Command+shift+H),将应用放入这个 应用程序 文件夹,就只有这个用户看得到。而且启动台上也能看到。
sean.liu
2022/08/03
6490
MacOS环境设置笔记
网站环境设置(1)
在云主机上用nginx跑几个虚拟主机运行几个不同的网站是很常见的事。下面仅是常用步骤的一个备忘记录,尤其免密码sudo的设置在生成环境中是绝对不推荐的。
dhyuan
2022/05/30
7590
C++ 环境设置
如果您想要设置 C++ 语言环境,您需要确保电脑上有以下两款可用的软件,文本编辑器和 C++ 编译器。
用户7952898
2020/11/09
2.3K0
Linux环境基本设置
安装好Linux系统后,通常要做一些基本设置,比如网络,防火墙等。 1.修改ip地址,执行如下命令: vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes #开机使用 BOOTPROTO=static #ip地址设置为静态 IPADDR=192.168.92.82 #Linux服务器ip地址 GATEWAY=192.168.92.1 #网关地址 NETMASK=255.
sparkle123
2018/04/26
3.8K0
pycharm 设置环境_pycharm 虚拟环境
这个页面有两个选项,New environment using 这个选项是建立一个虚拟的python运行环境,目录就是之前自己设置的项目目录下的venv(virtule environment简称),这个虚拟环境可以包含你运行本工程需要的支持包,并可以在这个虚拟的环境中安装新的支持包,这能给你建立一个相对独立的python环境,这个新建虚拟环境的下面两个子选项的意思是继承全局的site-package,含义就是将自己python路径下的site-package链接到你的venv下面以供使用(在venv下面生成几个配置文件,可以链接到你的本地python/Lib/site-package),第二个子选项的含义是你在这个工程中使用的python解释器可以对其他工程可见。
全栈程序员站长
2022/09/20
9710
pycharm 设置环境_pycharm 虚拟环境
MongoDB设置为Windows服务
       每次使用Mongodb都要开启两个命令行,一个开启主流程程序,一个开启客户端程序。你是否想过更方便的操作方式?对的,那就是把主流程程序设置为Windows的服务,客户端程序也可以自定一个命令行脚本实现快捷启动。以下均以win8系统作为操作系统。
程序新视界
2022/11/30
9130
MongoDB设置为Windows服务
pycharm设置代理_mac pycharm怎么设置环境
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/175050.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/27
3.4K0
pycharm设置代理_mac pycharm怎么设置环境
laravel validate 设置为中文(验证提示为中文)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/113142.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/07
3K0
如何设置python的环境变量_anaconda环境变量手动设置
在python项目实践中,不知道为什么我的os.getenv一直拿不到环境变量,于是我就试了三种设置环境变量的方法,中解决了问题。
全栈程序员站长
2022/09/25
4.6K0
如何设置python的环境变量_anaconda环境变量手动设置

相似问题

paypal通过商家API取消交易

110

PayPal REST API:代表商家发出请求

13

PayPal使用REST API从商家向用户汇款

11

PayPal -商家取消交易

16

codeigniter CI商家paypal

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文