Android中在fragment中实现点击按钮事件

在fragment不能直接进行点击事件,需要放到oncreatActivity中

具体方法如下:

需要注意的是import android.support.v4.app.Fragment;导入的这个包

public class SendFragment extends Fragment {
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
        return inflater.inflate(R.layout.send_fragment,container,false);
    }
    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
       // final User user ;
        final EditText et_title = (EditText) getActivity().findViewById(R.id.et_title);
        final EditText et_salary = (EditText) getActivity().findViewById(R.id.et_salary);
        final EditText et_sex = (EditText) getActivity().findViewById(R.id.et_sex);
        final EditText et_count = (EditText) getActivity().findViewById(R.id.et_count);
        final EditText et_phone = (EditText) getActivity().findViewById(R.id.et_phone);
        final EditText et_time = (EditText) getActivity().findViewById(R.id.et_time);
        final EditText et_address = (EditText) getActivity().findViewById(R.id.et_address);
        final EditText et_description = (EditText) getActivity().findViewById(R.id.et_description);
        Button btn_send = (Button) getActivity().findViewById(R.id.btn_send);

        btn_send.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //String username=user.getUsername().toString();
                String title = et_title.getText().toString();
                String salary = et_salary.getText().toString();
                String sex = et_sex.getText().toString();
                String count = et_count.getText().toString();
                String phone = et_phone.getText().toString();
                String time = et_time.getText().toString();
                String address = et_address.getText().toString();
                String description = et_description.getText().toString();
                JobDao jobDao = new JobDao(getActivity());
                jobDao.add(new Job(title, salary, sex, count, phone, time, address, description));
                Toast.makeText(getActivity(), "发布成功", Toast.LENGTH_LONG).show();
                Intent intent = new Intent(getActivity(),MainActivity.class);
                startActivity(intent);
            }
        });
    }
}
---------------------
作者:shasha1021
来源:CSDN
原文:https://blog.csdn.net/shasha1021/article/details/72717229
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/derekhan/p/11096235.html

时间: 2024-11-02 17:37:35

Android中在fragment中实现点击按钮事件的相关文章

.Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化

原文:.Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化 我们知道资源被注册到R.java我们通过R.java就可以读取到界面中的组件.跟我们.net一样,通过ID来读取组件 知识点: 通过R.java读取组件 MainActivity.java通过findViewById方法查找组件 在Layout中用@string查找字符串,这个跟我们MVC中国际化基本相识,通过xml这种资源引用进行中文和英文切换 加入中文和英文本地化 双击fragment_main.xml设计视图

EventBus框架在Android多Pane(Fragment)中的应用

通常多pane的设计中,比如Fragment A是个Headline,Fragement B是detail,那么B通常需要实现A的点击事件的接口,这样子的话,两个fragment就高耦合了,而且需要在Fragment A中编写一个interface,如果Fragment很多,情景更复杂些,就乱了. 这里可以使用EventBus这个框架,一个典型的发布者-订阅者模式.具体可以参考: https://github.com/greenrobot/EventBus 使用方法大致如下: 这个例子来源于An

【Android笔记】Fragment中显示高德地图

本文来自:fair-jm.iteye.com 转截请注明出处 官网的教程是在Activity下 在Fragment下在高德论坛找到一些方法 试了下可以显示 但是切换后总会有些问题 比如切换后就是新的了 切换后地图就不显示了 我这种方式可以在切换后保持地图状态 但是得限定屏幕为水平或者竖直 如果翻转的话也会报错 布局文件: 1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns

android开发(41) Fragment中使用POP_BACK_STACK_INCLUSIVE达到一次跳转到栈底。类似Activity的 采用FLAG_ACTIVITY_CLEAR_TOP

需求场景: 在开发中遇到下面这样场景: 1.创建 Fragment A 显示.  这时栈的结构是: 1.Fragment A 2.创建 Fragment B 并 显示.  从下到上看,这时栈的结构是: 2.Fragment B 1.Fragment A 3.创建 Fragment C 并 显示.  从下到上看,这时栈的结构是: 3.Fragment C 2.Fragment B 1.Fragment A 那么,如何从 Fragment C 一次性跳到 Fragment A 呢? 实现: 入栈时,

[Android] 多重使用Fragment 中的onFragmentInteraction

新建的一个Fragment,被一个Activity使用,那么这个Activity需要继承一个接口: public class MainActivity extends Activity implements HistoryFragment.OnFragmentInteractionListener{ } 否则会被报错 java.lang.ClassCastException: [email protected] must implement OnFragmentInteractionListen

关于FragmentActivity中调用fragment中方法

private void initFragment() { mRecommendFragment = new RecommendFragment(); mInvestFragment = new InvestFragment(); mClassRoomFragment = new ClassRoomFragment(); mMineFragment = new MineFragment(); mBaseFragments = new BaseFragment[] { mRecommendFrag

android延迟进入主界面和点击按钮进入主界面代码

我是做web开发的,最近在学习android. 周末的时候想写个延迟进入主界面的功能,主要用到Handler和Runnable,代码如下:  package com.zx.app; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.view.View; import android.widge

Android Fragment中使用Intent组件拍照

要在activity里面去接受,然后传递给fragment对象,fragment有很多回调调用不到 你的设备有摄像头吗? 为了确保市场上的大多数设备都能运行你的程序,必须在项目中做一些检测,保证使用的设备可以执行你的代码. 我们可以这么做: 在程序的配置清单文件中标明要求使用摄像头: 在代码中用PackageManager进行设备功能检测: 在项目的androidManifest文件中添加使用摄像头权限 android.hardware.camera (在一个Fragment中)用Package

怎样在一个fragment or 随意类中操作还有一个fragment中的方法

1 怎样在acitivty中运行fragment中的方法: 首先获得这个Fragment的对象 xxxFragment fragmentObject = (xxxFragment) getFragmentManager.findFragmentByTag("xx"); 2 怎样在Fragment中运行activity中的方法: 第一种:让acitivity继承接口 另外一种:在fragment中使用getActivity()可是要加上acitivity的名字,即: ((MainActi