Java 横向模式下的Android多片段布局

Java 横向模式下的Android多片段布局,java,android,android-fragments,android-intent,android-implicit-intent,Java,Android,Android Fragments,Android Intent,Android Implicit Intent,虽然我的代码可以工作,但我现在不知道它实际上在做什么。 我的应用程序是一个RSS阅读器,主要内容是一个片段,包含一个列表视图,其中包含新闻故事对象。单击列表项时,会打开一个Intent,其中包含从RSS链接的网站 现在的问题是,我不理解这里的Intent,这不是我以前使用过的Intents的方式 另外,我必须这样做,当我改变方向时,原始配置文件片段占据屏幕的左半部分,链接网页占据屏幕的右半部分。我把它弄得乱七八糟,一无所获。我做了一些关于方向变化的研究,但我想用Fragments做一些事情,它总

虽然我的代码可以工作,但我现在不知道它实际上在做什么。 我的应用程序是一个RSS阅读器,主要内容是一个
片段
,包含一个
列表视图
,其中包含
新闻故事
对象。单击列表项时,会打开一个
Intent
,其中包含从RSS链接的网站

现在的问题是,我不理解这里的
Intent
,这不是我以前使用过的
Intent
s的方式

另外,我必须这样做,当我改变方向时,原始配置文件
片段
占据屏幕的左半部分,链接网页占据屏幕的右半部分。我把它弄得乱七八糟,一无所获。我做了一些关于方向变化的研究,但我想用
Fragment
s做一些事情,它总是改变一切的工作方式。无论如何,这里是
片段
代码。任何想法都将不胜感激

public class HeadlineFragment extends Fragment {

    EditText input;
    Button search;
    ListView headlines;
    NewsDataSource ds;


    public HeadlineFragment() {
        // Required empty public constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        View v = inflater.inflate(R.layout.fragment_headline,container,false);

        input = (EditText)v.findViewById(R.id.txtInput);
        search = (Button)v.findViewById(R.id.btnSearch);
        headlines = (ListView)v.findViewById(R.id.listView);

        try {
            ds = new NewsDataSource();
        } catch (ExecutionException e) {
            e.printStackTrace();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        headlines.setAdapter(new NewsDataSourceAdapter(this.getActivity(), ds));

        headlines.setOnItemClickListener(new AdapterView.OnItemClickListener()
        {
            @Override
            public void onItemClick(AdapterView<?> parent,View view, int position, long id)
            {
                String url = NewsDataSource.stories[position].getLink();
                Intent i = new Intent(Intent.ACTION_VIEW);
                i.setData(Uri.parse(url));
                startActivity(i);
            }
        });

        return v;
    }
    /*
    @Override
    public void onConfigurationChanged(Configuration newConfig){
        super.onConfigurationChanged(newConfig);


    }
    */
}
public类HeadlineFragment扩展了片段{
编辑文本输入;
按钮搜索;
列表视图标题;
新闻数据源ds;
公共标题片段(){
//必需的空公共构造函数
}
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
//为该碎片膨胀布局
视图v=充气机。充气(右布局。碎片标题,容器,假);
输入=(EditText)v.findViewById(R.id.txtInput);
搜索=(按钮)v.findviewbyd(R.id.btnSearch);
标题=(ListView)v.findViewById(R.id.ListView);
试一试{
ds=新的新闻数据源();
}捕获(执行例外){
e、 printStackTrace();
}捕捉(中断异常e){
e、 printStackTrace();
}
setAdapter(新的NewsDataSourceAdapter(this.getActivity(),ds));
headlines.setOnItemClickListener(新的AdapterView.OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
字符串url=NewsDataSource.stories[position].getLink();
意向i=新意向(意向.行动\视图);
i、 setData(Uri.parse(url));
星触觉(i);
}
});
返回v;
}
/*
@凌驾
公共无效OnConfiguration已更改(配置newConfig){
super.onConfigurationChanged(newConfig);
}
*/
}

首先,关于
意图
,它是一种隐含的
意图
。当您将
action
设置为
action\u视图
并添加一个URI/URL作为额外内容时,操作系统会收到一条消息,表明您希望打开一个可以导航到该URI/URL的应用程序

其次,为了在横向模式下显示双窗格布局,您必须以
片段
而不是当前所做的
活动
显示RSS内容,并且您必须在横向模式下以
活动
并排显示这些
片段。有关如何在纵向模式下显示多窗格主细节布局的详细说明,请参见示例

参考资料:

1.


2.

这正是我要找的,但找不到。非常感谢你。