为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Android攻城狮的第二门课(第1季)_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Android攻城狮的第二门课(第1季)

Smile浅笑 JAVA开发工程师
难度入门
时长 5小时 0分
  • ProgressBar的分类
    查看全部
  • ProgressBar显示风格Style
    查看全部
  • ProgressBar课程目标
    查看全部
    0 采集 收起 来源:ProgressBar简介

    2016-02-07

  • Fragment向Activity传递数据 I(动态模式) public class MainActivity extends Activity implements MyListener{ ... //动态加载Fragment ... @Override public void thank(String code) { ... } ... } //另类 public class MyFragment3 extends Fragment { private String code="imooc"; public MyListener listener; public interface MyListener{ public void thank(String code); } @Override public void onAttach(Activity activity) { listener=(MyListener) activity;//前提:Activity实现了该接口 super.onAttach(activity); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.fragment, container,false); ... Toast.makeText(getActivity(), "向Activity发送的数据:"+code, 1).show(); listener.thank(code);//调用的是实现了该接口的Activity中的thank()方法 return view; } Ps:重写的是构造方法super语句(如果要写的话)必须是第一行。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • Activity向Fragment传递数据 case R.id.btn_submit: MyFragment3 myFragment3 = new MyFragment3(); FragmentManager fragmentManager1 = getFragmentManager(); FragmentTransaction beginTransaction1 = fragmentManager1.beginTransaction(); Bundle bundle=new Bundle(); String str=et.getText().toString(); bundle.putString("name", str); myFragment3.setArguments(bundle); beginTransaction1.add(R.id.frame, myFragment3, "myFragment3");//第三个参数tag目前这里还用不到 beginTransaction1.addToBackStack("null"); beginTransaction1.commit(); Toast.makeText(this, "已发送数据:"+str, 1).show(); break; public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.fragment, container,false); TextView text=(TextView) view.findViewById(R.id.text); String str=getArguments().getString("name"); text.setText(str); Toast.makeText(getActivity(), "接收到的数据:"+str, 1).show();//注意这里第一参数使用getActivity() return view; }
    查看全部
  • Fragment的生命周期 1、 onAttach();//当fragment被添加到activity中时会回调这个方法;只会调用一次 2、 onCreate();//在fragment创建的时候回调这个方法;只会调用一次; 3、 onCreateView()://每次创建都会绘制Fragment的View组件时调用该方法,相当于fragment绑定一个布局,布局文件转换成view返回回来; 4、 onActivityCreated();//fragment所在的activity启动完成后调用; 5、 onStart():启动Fragment时会被回调, 6、 onResume()方法,调用onStart()方法后面一定会调用这个方法,恢复fragment时回调 7、 onPause():暂停Fragment 8、 onStop();//停止Fragment 9、 onDestroyView():销毁Fragment所包含的View组件,与onCreateView相对应 10、 onDestroy():销毁Fragment时会被回调 11、 onDetach():Fragment从Activity中删除时回调这个方法,并且只调用一次 启动fragment onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume() 屏幕锁屏 onPause()->onStop() 屏幕解锁 onStart()->onResume() 第一个fragment切换到第二个fragment 第一个onPause()->onStop()->onDestoryView()->onDestory()->onDetach(); 第二个onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume() Ps:类似Activity周期,只是更详细,但是OnStop()后,重启时没ReStart();直接OnStart()——OnResume()。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • 动态加载Fragment case R.id.btn_dynamic: MyFragment2 fragment2=new MyFragment2(); FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction beginTransaction = fragmentManager.beginTransaction(); beginTransaction.add(R.id.frame, fragment2); beginTransaction.addToBackStack("null"); beginTransaction.commit(); break; Ps:代码处使用Ctrl+1,选择Assign Statement to new local variable/Assign Statement to new Field就可以添加本地变量/域变量的声明,其他有返回值的方法调用同样适用(也可以用Ctrl+2,停顿一下然后选择L或F来达到同样的效果)。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • 处理Fragment事务 根据用户的交互情况,对Fragment进行添加、移除、替换,以及执行其他动作,提交给Activity的每一套变化被称作一个事务。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • Fragment——动态加载 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • 静态加载Fragment I public class MyFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { //layout布局文件转换成View对象 /** * resource:Fragment需要加载的布局文件 * root:父容器控件 * attactToRoot:是否连接该布局和其父容器控件,在这里的情况设置为false,因为系统已经插入了这个布局到父控件,设置为true将会产生多余的一个View Group。 */ View view=inflater.inflate(R.layout.fragment, container,false); TextView text=(TextView) view.findViewById(R.id.text); text.setText("静态加载Fragment"); return view; } } Ps1:步骤:1、具有fragment控件的xml(name填写需要导入的自定义的xml对应的类)——2、新建一个自定义的xml文件(准导入到步骤1说的fragment控件的xml)——3、新建一个类(对应步骤2新建的自定义的xml)进行关联。 Ps2:fragment组件包含的“name”布局里的组件是可以对它们进行操控的。 Ps3:注意一定要给fragment控件填上id或者tag(唯一标识),否则报错。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • Fragment——静态加载 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • onCreateView()方法 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • Fragment知识概要【重点】 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • Fragment的设计哲学 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • 使用WebView显示网页 III //改写物理按键——返回的逻辑 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode==KeyEvent.KEYCODE_BACK){ if(wv.canGoBack()){ wv.goBack();//返回上一页面 return true; }else{ System.exit(0); } } return super.onKeyDown(keyCode, event); } Ps:小技巧:Windows+左键/右键或者上键/下键,可以让当前窗口占据屏幕左半边/右半边或上半边/下半边。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部

举报

0/150
提交
取消
课程须知
本课程是Android开发课程进阶部分的第1季,将讲解各种高级控件的使用,对于不熟悉Android开发的童鞋来说会有一定的难度,所以,建议在学习本门课程之前: 1、熟练掌握Java基础语法和面向对象编程 2、熟悉Android开发环境 3、熟练使用Button、ImageView等基础控件
老师告诉你能学到什么?
1、Android高级控件的应用场景 2、Android高级控件的使用方法 3、熟悉Android常用高级控件
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!