美文网首页
2018-03-15 Fragment布局(一)

2018-03-15 Fragment布局(一)

作者: 紫杉叶子 | 来源:发表于2018-03-19 09:37 被阅读0次
笔记如下


如图:
Video_2018-03-15_143056.gif

  • 源码
    文件结构目录


    2018-03-15_144211.png

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" tools:context="com.chen.fregment.MainActivity">

    <FrameLayout
        android:id="@+id/container"
        android:layout_weight="1"
        android:layout_width="match_parent"
        android:layout_height="0dip">
    </FrameLayout>

    <LinearLayout
       android:orientation="horizontal"
       android:layout_width="match_parent"
       android:layout_height="wrap_content">

       <Button
          android:onClick="sound"
           android:layout_weight="1"
          android:layout_width="0dip"
          android:layout_height="wrap_content"
          android:text="声音"
          />
       <Button
           android:onClick="display"
           android:layout_weight="1"
           android:layout_width="0dip"
          android:layout_height="wrap_content"
          android:text="显示"
          />
       <Button
           android:onClick="storge"
           android:layout_weight="1"
           android:layout_width="0dip"
          android:layout_height="wrap_content"
          android:text="存储"
          />

   </LinearLayout>


</LinearLayout>


MainActivity类

package com.chen.fregment;

import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    FragmentManager manager;
    FragmentTransaction transaction;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        //fragment:不需要去清单文件中声明,直接new
        SoundFragment sf = new SoundFragment();

        //拿到fragment的manager对象
        FragmentManager manager = getFragmentManager();

        //事务(防止花屏)
        FragmentTransaction transaction = manager.beginTransaction();

        //表示使用SoundFragment 去替换之前的fragment
        transaction.replace(R.id.container,sf);

        //提交事务
        transaction.commit();

    }

    //声音
    public void sound(View v){
        //在右侧声明一个fragment
        //fragment:不需要去清单文件中声明,直接new
        SoundFragment sf = new SoundFragment();
        
        //拿到fragment的manager对象

        manager = getFragmentManager();

        //事务(防止花屏)
        transaction = manager.beginTransaction();

        //表示使用SoundFragment 去替换之前的fragment
        transaction.replace(R.id.container,sf);

        //提交事务
        transaction.commit();

    }


    //显示
    public void display(View v){

        DisplayFragment df = new DisplayFragment();
        manager = getFragmentManager();
        transaction = manager.beginTransaction();
        transaction.replace(R.id.container,df);
        transaction.commit();
    }

    //存储
    public void storge(View v){

        StorgeFragment df = new StorgeFragment();
        manager = getFragmentManager();
        transaction = manager.beginTransaction();
        transaction.replace(R.id.container,df);
        transaction.commit();

    }


}

SoundFragment类

package com.chen.fregment;

import android.app.Fragment;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

/**
 * Created by HP on 2018/3/15.
 */

public class SoundFragment extends Fragment {


    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
        //先将fragment声明layout文件,然后装换为一个view对象
        return  inflater.inflate(R.layout.soundfragment,null);

    }
}

soundfragment.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:background="#44ff0000"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:textSize="30sp"
        android:text="声音的fragment"
        />

</LinearLayout>

其他的xml与类都一样

相关文章

  • 2018-03-15 Fragment布局(一)

    笔记如下 源码文件结构目录2018-03-15_144211.png activity_main.xml中 Mai...

  • Fragment总结

    Fragment Fragment结构活动布局中的FragmentLayout(布局)容器Fragment的子布局...

  • Fragment

    1.静态添加Fragment ①创建一个fragment②创建布局,把①中的fragment放到布局中❤注意:①必...

  • Fragment

    1.静态添加Fragment ①创建一个fragment②创建布局,把①中的fragment放到布局中*注意:①必...

  • Day05

    Day05 fragment传值 方法一 fragment布局一 acticity布局 java代码 Fragme...

  • Fragment

    静态添加fragment①创建一个fragment②创建布局,把①中的fragment放到布局中注意:①必须要有i...

  • Fragment入门

    主要步骤 1、写出fragment的布局文件2、定义一个继承Fragment的类加载该布局文件3、fragment...

  • 2018-03-15 Fragment布局(二) ---- 数据

    笔记如下 输入框是在activity中的,按钮在fragment中主要代码SoundFragment类

  • Fragment与Activity及Fragment与Fragm

    Fragment Activity之间通信 FragmentFirst 布局 MainActivity 布局 1....

  • 使用FragmentTabHost 完成一个简单的底部导航栏

    使用FragmentTabhost+Fragment实现一个底部导航栏 主布局: //放置Fragment ...

网友评论

      本文标题:2018-03-15 Fragment布局(一)

      本文链接:https://www.haomeiwen.com/subject/rilhqftx.html