DialogFragment中使用viewpager+fragment时出现问题

fragment does not have a view

package com.yidi.livelibrary.widget.dialog;

import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.widget.TextView;

import com.hn.library.utils.AppLogger;
import com.yidi.livelibrary.R;
import com.yidi.livelibrary.ui.fragment.HnContributionFragment;

import java.util.ArrayList;
import java.util.List;


/**
 * Menu Dialog
 */
public class HnContributionDialog extends DialogFragment implements View.OnClickListener {

    private FragmentActivity mActivity;
    private TextView tvLeft;
    private TextView tvMiddle;
    private TextView tvRight;
    private ViewPager viewPager;
    private String anchor_user_id;
    private ArrayList<Fragment> mFragments = new ArrayList<>();
    public static HnContributionDialog newInstance(String anchor_user_id) {
        Bundle bundle = new Bundle();
        bundle.putString("anchor_user_id",anchor_user_id);
        HnContributionDialog sDialog = new HnContributionDialog();
        sDialog.setArguments(bundle);
        return sDialog;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mActivity = getActivity();
        Bundle bundle = getArguments();
        if (bundle != null) {
            anchor_user_id = bundle.getString("anchor_user_id");
            AppLogger.e(anchor_user_id);
        }
    }

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        View view = View.inflate(mActivity, R.layout.live_left_dialog, null);
        Dialog dialog = null;
        dialog = new Dialog(mActivity, R.style.LeftDialog);
        dialog.setContentView(view);
        dialog.setCanceledOnTouchOutside(true);
        Window alertWindow = dialog.getWindow();
        WindowManager.LayoutParams params = alertWindow.getAttributes();
        alertWindow.setGravity(Gravity.LEFT);
        params.height = (mActivity.getWindowManager().getDefaultDisplay().getHeight());
        params.width = mActivity.getWindowManager().getDefaultDisplay().getWidth();
        alertWindow.setAttributes(params);
        dialog.getWindow().setDimAmount(0f);
        //初始化组件
        initView(view);
        return dialog;

    }
    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

    }


    /**
     * 初始化视图
     *
     * @param view
     */
    private void initView(View view) {
        tvLeft = (TextView) view.findViewById(R.id.tvLeft);
        tvMiddle = (TextView) view.findViewById(R.id.tvMiddle);
        tvRight = (TextView) view.findViewById(R.id.tvRight);
        viewPager = (ViewPager) view.findViewById(R.id.vp);
        view.findViewById(R.id.vOut).setOnClickListener(this);
        tvLeft.setSelected(true);
        tvLeft.setOnClickListener(this);
        tvMiddle.setOnClickListener(this);
        tvRight.setOnClickListener(this);
        viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

            }

            @Override
            public void onPageSelected(int position) {
                switch (position) {
                    case 0:
                        tvLeft.setSelected(true);
                        tvMiddle.setSelected(false);
                        tvRight.setSelected(false);
                        break;
                    case 1:
                        tvLeft.setSelected(false);
                        tvMiddle.setSelected(true);
                        tvRight.setSelected(false);
                        break;
                    case 2:
                        tvLeft.setSelected(false);
                        tvMiddle.setSelected(false);
                        tvRight.setSelected(true);
                        break;
                    default:
                        break;
                }

            }

            @Override
            public void onPageScrollStateChanged(int state) {
            }
        });
        mFragments.add(HnContributionFragment.newInstance("day",anchor_user_id));
        mFragments.add(HnContributionFragment.newInstance("week",anchor_user_id));
        mFragments.add(HnContributionFragment.newInstance("all",anchor_user_id));
        PagerAdapter adapter = new PagerAdapter(getFragmentManager(), mFragments);
        viewPager.setAdapter(adapter);
    }
    public  void setViewPager(){

    }
    class PagerAdapter extends FragmentPagerAdapter {

        private List<Fragment> mFragments;

        public PagerAdapter(FragmentManager fm, List<Fragment> mFragments) {
            super(fm);
            this.mFragments = mFragments;
        }

        @Override
        public int getCount() {
            return mFragments.size();
        }

        @Override
        public CharSequence getPageTitle(int position) {
            return null;
        }

        @Override
        public Fragment getItem(int position) {
            Fragment fragment = mFragments.get(position);
            return fragment;
        }
    }

    @Override
    public void onClick(View v) {
        int id = v.getId();
        if (id == R.id.tvLeft) {
            tvLeft.setSelected(true);
            tvMiddle.setSelected(false);
            tvRight.setSelected(false);
        } else if (id == R.id.tvMiddle) {
            tvLeft.setSelected(false);
            tvMiddle.setSelected(true);
            tvRight.setSelected(false);
        } else if (id == R.id.tvRight) {
            tvLeft.setSelected(false);
            tvMiddle.setSelected(false);
            tvRight.setSelected(true);
        } else if (id == R.id.vOut) {
            dismiss();
        }

    }


    @Override
    public void onDestroy() {
        super.onDestroy();
    }

    @Override
    public void onDismiss(DialogInterface dialog) {
        super.onDismiss(dialog);
        mActivity = null;
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        // TODO: inflate a fragment view
        View rootView = super.onCreateView(inflater, container, savedInstanceState);
        return rootView;
    }

    @Override
    public void onDestroyView() {
        super.onDestroyView();
    }


}

2个回答

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// TODO: inflate a fragment view
View rootView =View.inflate(mActivity, R.layout.live_left_dialog, null);
initView(rootView);
return rootView;
}

嵌套的Fragment请使用getChildFragmentManager()
在你new PagerAdapter那一行

weimingjue
王能 回复枫之缘: 那就把问题描述清楚一点
大约一年之前 回复
u012195640
枫之缘 一样试过了还是不行
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
DialogFragment中使用viewpager+fragment时出现问题

fragment does not have a view ``` package com.yidi.livelibrary.widget.dialog; import android.app.Dialog; import android.content.DialogInterface; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.app.DialogFragment; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.Window; import android.view.WindowManager; import android.widget.TextView; import com.hn.library.utils.AppLogger; import com.yidi.livelibrary.R; import com.yidi.livelibrary.ui.fragment.HnContributionFragment; import java.util.ArrayList; import java.util.List; /** * Menu Dialog */ public class HnContributionDialog extends DialogFragment implements View.OnClickListener { private FragmentActivity mActivity; private TextView tvLeft; private TextView tvMiddle; private TextView tvRight; private ViewPager viewPager; private String anchor_user_id; private ArrayList<Fragment> mFragments = new ArrayList<>(); public static HnContributionDialog newInstance(String anchor_user_id) { Bundle bundle = new Bundle(); bundle.putString("anchor_user_id",anchor_user_id); HnContributionDialog sDialog = new HnContributionDialog(); sDialog.setArguments(bundle); return sDialog; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mActivity = getActivity(); Bundle bundle = getArguments(); if (bundle != null) { anchor_user_id = bundle.getString("anchor_user_id"); AppLogger.e(anchor_user_id); } } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { View view = View.inflate(mActivity, R.layout.live_left_dialog, null); Dialog dialog = null; dialog = new Dialog(mActivity, R.style.LeftDialog); dialog.setContentView(view); dialog.setCanceledOnTouchOutside(true); Window alertWindow = dialog.getWindow(); WindowManager.LayoutParams params = alertWindow.getAttributes(); alertWindow.setGravity(Gravity.LEFT); params.height = (mActivity.getWindowManager().getDefaultDisplay().getHeight()); params.width = mActivity.getWindowManager().getDefaultDisplay().getWidth(); alertWindow.setAttributes(params); dialog.getWindow().setDimAmount(0f); //初始化组件 initView(view); return dialog; } @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); } /** * 初始化视图 * * @param view */ private void initView(View view) { tvLeft = (TextView) view.findViewById(R.id.tvLeft); tvMiddle = (TextView) view.findViewById(R.id.tvMiddle); tvRight = (TextView) view.findViewById(R.id.tvRight); viewPager = (ViewPager) view.findViewById(R.id.vp); view.findViewById(R.id.vOut).setOnClickListener(this); tvLeft.setSelected(true); tvLeft.setOnClickListener(this); tvMiddle.setOnClickListener(this); tvRight.setOnClickListener(this); viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { switch (position) { case 0: tvLeft.setSelected(true); tvMiddle.setSelected(false); tvRight.setSelected(false); break; case 1: tvLeft.setSelected(false); tvMiddle.setSelected(true); tvRight.setSelected(false); break; case 2: tvLeft.setSelected(false); tvMiddle.setSelected(false); tvRight.setSelected(true); break; default: break; } } @Override public void onPageScrollStateChanged(int state) { } }); mFragments.add(HnContributionFragment.newInstance("day",anchor_user_id)); mFragments.add(HnContributionFragment.newInstance("week",anchor_user_id)); mFragments.add(HnContributionFragment.newInstance("all",anchor_user_id)); PagerAdapter adapter = new PagerAdapter(getFragmentManager(), mFragments); viewPager.setAdapter(adapter); } public void setViewPager(){ } class PagerAdapter extends FragmentPagerAdapter { private List<Fragment> mFragments; public PagerAdapter(FragmentManager fm, List<Fragment> mFragments) { super(fm); this.mFragments = mFragments; } @Override public int getCount() { return mFragments.size(); } @Override public CharSequence getPageTitle(int position) { return null; } @Override public Fragment getItem(int position) { Fragment fragment = mFragments.get(position); return fragment; } } @Override public void onClick(View v) { int id = v.getId(); if (id == R.id.tvLeft) { tvLeft.setSelected(true); tvMiddle.setSelected(false); tvRight.setSelected(false); } else if (id == R.id.tvMiddle) { tvLeft.setSelected(false); tvMiddle.setSelected(true); tvRight.setSelected(false); } else if (id == R.id.tvRight) { tvLeft.setSelected(false); tvMiddle.setSelected(false); tvRight.setSelected(true); } else if (id == R.id.vOut) { dismiss(); } } @Override public void onDestroy() { super.onDestroy(); } @Override public void onDismiss(DialogInterface dialog) { super.onDismiss(dialog); mActivity = null; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // TODO: inflate a fragment view View rootView = super.onCreateView(inflater, container, savedInstanceState); return rootView; } @Override public void onDestroyView() { super.onDestroyView(); } } ```

dialogfragment获取其中嵌套的fragment中的控件

我在dialogfragment中嵌套了viewpager+fragment,我想实现点击fragment中的按钮返回数据到dialogfragment中的textview上,应该怎么做啊

如何在fragment中套viewpager

我在viewpager中的fragment套viewpager报runtimeexception,求解决,最好有代码

Fragment中嵌套ViewPager导致内部fragment不初始化的问题

具体场景是这样: 我在 MainActivity 中使用 fragmentTransaction.commitAllowingStateLoss() 添加了 AFragment, AFragment 中使用 ViewPager 实现 BFragment 和 CFragment的滑动. 添加 AFragemnt 后我并不跳转到这个 fragment, 所以 AFragment 没有显示, 但是 AFragment 中的 ViewPager 已经创建好了, 也 setAdapter/setCurrentItem 了, 但这时候 BFragment 和 CFragment 就没有初始化. 请问这是怎么回事, 有办法解决么?

安卓viewPager+fragment加载后台数据出现的黑屏问题

fragment个数20多个吧是动态增加的,并且fragment需要的数据是在fragment中网络获取的,viewpager绑定adapter的时候出现闪屏,后面左右滑动都没有这个问题。就是在刚刚进入程序后的MainActivity找那个嵌套了两层fragment 然后就会黑屏2秒然后又加载出数据速求大神解决

ViewPager 嵌套 fragment 中无法显示fragment中的listview内容

我在viewpager中用fragment作为加载页,然后在fragment中嵌入了一个listview,单独测试时fragment能载入listview内容,但是在viewpager中加载fragment时,无法显示listview内容,fragment其他组件能显示 viewpager 代码: import java.util.ArrayList; import java.util.List; import com.nineteen.myandroid.R; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.text.Layout; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class AppUninstall extends FragmentActivity { ViewPager viewPager; // 内容页 List<View> views = new ArrayList<View>(); // 标题页 List<String> titles = new ArrayList<String>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.app_uninstall); viewPager = (ViewPager) findViewById(R.id.viewpager); LayoutInflater inflater = LayoutInflater.from(this); View view = inflater.inflate(R.id.appun_person, null); views.add(view); titles.add("个人应用"); view = inflater.inflate(R.layout.test_relatvelayout, null); views.add(view); titles.add("系统预装"); view = inflater.inflate(R.layout.test_button, null); views.add(view); titles.add("猜你不喜欢"); viewPager.setAdapter(new MyPagerAdapter(views, titles)); } class MyPagerAdapter extends PagerAdapter { List<View> views; List<String> titles; public MyPagerAdapter(List<View> views, List<String> titles) { this.views = views; this.titles = titles; } @Override public int getCount() { return views.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } // 获取到标题 public CharSequence getPageTitle(int position) { return titles.get(position); } @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(views.get(position)); return views.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(views.get(position)); } } } viewpage XML: <android.support.v4.view.ViewPager android:id="@+id/appun_viewpager" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" > <android.support.v4.view.PagerTabStrip android:id="@+id/pager_title" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="top" /> </android.support.v4.view.ViewPager> fragment代码: import java.util.ArrayList; import java.util.HashMap; import java.util.List; import com.nineteen.myandroid.R; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.widget.ListView; import android.widget.SimpleAdapter; public class PersonApp extends FragmentActivity { List<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>(); ListView listView; int[] icon = { R.drawable.a005, R.drawable.a006, R.drawable.a007, R.drawable.a008, R.drawable.a009, R.drawable.a010, R.drawable.a011, R.drawable.a012, R.drawable.a013, R.drawable.a014, R.drawable.a015, R.drawable.a016, R.drawable.a017, R.drawable.a018, R.drawable.a019 }; String[] name = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "14" }; float[] size = { 1.10f, 1.10f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 1.1f, 2.0f }; @Override protected void onCreate(Bundle arg0) { super.onCreate(arg0); setContentView(R.layout.app_uninstall_listview); listView = (ListView) findViewById(R.id.app_uninstall_listview); List<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>(); for (int i = 0; i < icon.length; i++) { HashMap<String, Object> map = new HashMap<String, Object>(); map.put("icon", icon[i]); map.put("name", name[i]); map.put("size", size[i]); list.add(map); SimpleAdapter adapter = new SimpleAdapter(this, list, R.layout.app_uninstallitem, new String[] { "icon", "name", "size" }, new int[] { R.id.appun_imageview, R.id.appun_nameview, R.id.app_unitem_size }); listView.setAdapter(adapter); } } } fragment XML:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal" android:padding="2dp" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:text="手机内存" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="80dp" android:text="已用" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1.31" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="GB" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:text="," /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="剩余" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1.15" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="GB" /> </LinearLayout> <ProgressBar style="@android:style/Widget.ProgressBar.Horizontal" android:layout_width="match_parent" android:layout_height="5dp" android:max="100" android:progress="52" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal" android:padding="2dp" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:text="SD卡" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="104dp" android:text="已用" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1.31" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="GB" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:text="," /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="剩余" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1.15" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="GB" /> </LinearLayout> <ProgressBar style="@android:style/Widget.ProgressBar.Horizontal" android:layout_width="match_parent" android:layout_height="5dp" android:max="100" android:progress="52" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:padding="3dp" android:text="最近使用" /> <ListView android:id="@+id/app_uninstall_listview" android:layout_width="match_parent" android:layout_height="match_parent" > </ListView> </LinearLayout> </LinearLayout>

如何解决ViewPager+Fragment+GridView实现无限滑动时页面切换的卡顿问题?

最近想自己写一个日历组件,思路是使用ViewPager+Fragment+GridView,如图 (https://img-ask.csdn.net/upload/201902/27/1551263494_687583.png) 最外层是一个DialogFragment 如果正常滑动,没有任何问题,但在快速滑动的时候,在滑到Fragment1和4时进行setCurrentItem时,会发生卡顿现象,即没有即时跳转导致已达到边界无法继续滑动的情况 慢滑 (https://img-ask.csdn.net/upload/201902/27/1551269528_523451.gif) 快滑 (https://img-ask.csdn.net/upload/201902/27/1551269556_845553.gif) 我自己尝试过的解决办法: 1. 一开始我以为是Fragment中布局过于复杂,导致在刷新数据时卡顿,但即时我去掉Fragment中的所有布局,仍会发生卡顿现象 2.后来我将问题定位在ViewPager的事件分发上,将ViewPager的自定义,将onInterceptTouchEvent方法复写直接返回true,现象消失,滑动无问题,但由于GridView中需要响应点击事件,所以我又做了事件拦截的判断,但无论怎么判断,只要不直接返回true,该现象就会发生 下面贴上我的部分代码: 1. 我在DialogFragment中为ViewPager绑定监听事件,在onPageScrollStateChanged中判断页面是否跳转,在页面滑到最左最右时进行跳转 ``` //滑动状态监听 override fun onPageScrollStateChanged(p0: Int) { //1时表示正在滑动、2时表示滑动完毕、0时什么都没做,滑动时变化顺序为1>2>0 //在0时设置页面位置互换 if (p0 == 0){ position = calViewPager.currentItem when (position) { 0 -> { //到达最左侧Fragment时,刷新倒数第二个Fragment的数据与其保持一致,然后跳转,刷新部分代码省略 calViewPager.setCurrentItem(2, false) //跳转完成后刷新其余页面,代码省略 } 3 -> { //到达最右侧Fragment时,刷新第二个Fragment的数据与其保持一致,然后跳转,刷新部分代码省略 calViewPager.setCurrentItem(1, false) //跳转完成后刷新其余页面,代码省略 } 2 -> { //数据刷新,代码省略 } 1 -> { //数据刷新,代码省略 } } } } ``` 2.自定义了ViewPager,进行了事件拦截处理 ``` private var xPosition:Float? = null // 滑动点击判断、拦截 override fun onInterceptTouchEvent(ev: MotionEvent?): Boolean { val res = super.onInterceptTouchEvent(ev) xPosition = if (ev!!.action == MotionEvent.ACTION_DOWN){ ev.x }else{ if (Math.abs(ev.x - xPosition!!) > 0){ return true }else{ ev.x } } return res } ``` 3.ViewPager的Adapter ``` class MyCalendarViewPagerAdapter(fm: FragmentManager, private var fragmentsList:MutableList<Fragment>): FragmentPagerAdapter(fm){ //Fragment个数 override fun getCount(): Int { return fragmentsList.size } override fun getItem(p0: Int): Fragment { return fragmentsList[p0] } //不销毁Item override fun destroyItem(container: ViewGroup, position: Int, `object`: Any) { } override fun getItemPosition(`object`: Any): Int { return PagerAdapter.POSITION_NONE } } ``` 4.在Fragment中是使用回调进行的数据更新,代码就不上了 这个问题已经困扰我两周了 求大佬指点

Android FragmentDialog中viewPager不显示

我在fragmentDialog 中写了一显示表情的viewPager 并设置了一个按钮来设置viewPager的隐藏与显示 但是一旦隐藏掉这个viewPager在设置让它显示则显示为空白 刚弹出时是这样的![图片说明](https://img-ask.csdn.net/upload/201505/18/1431950446_696916.png) 点击那个绿色按钮隐藏掉![图片说明](https://img-ask.csdn.net/upload/201505/18/1431950465_21864.png) 再次点击让它显示就变成这样了 内容没了 变成空白的了![图片说明](https://img-ask.csdn.net/upload/201505/18/1431950485_625409.png)

安卓viewPager+fragment加载后台数据时会出现1秒黑屏然后数据在显示

我这个项目室个头条但是在首页展示新闻时 冲动APP不会闪 进去后要加载数据了基金会闪黑一秒在显示新闻列表 我排除了适配器、和主题的问题但是还要闪 给MainActivity设置两个属性的话 我界面上的dialog的背景都是透明的了就特别麻烦求大神帮忙解决 <item name="android:windowIsTranslucent">true</item> <item name="android:windowBackground">@android:color/transparent</item>

Fragment already added 接手别人的代码,出现这个问题,不知道如何 更改

接手别人的代码,出现这个问题,不知道如何改,求助。界面是有四个fragment,通过底部的四个图片切换四个fragment,出现这个问题,主要代码如下,求帮助: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent = getIntent(); page_num = intent.getIntExtra("page_num", 0); setContentView(R.layout.main_activity); ButterKnife.inject(this); setSwipeBackEnable(false); queue = VolleyQuery.getQueue(this); intidrawable(); getLocal(); intiView(page_num); //设置导航点击方法 nav_mshop.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { slider_animate(0); } }); nav_apply.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { slider_animate(1); } }); nav_join.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { slider_animate(2); } }); nav_mine.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { slider_animate(3); } }); if (page_num == 0) { getNewVersion("auto"); } } //滑动动画&&选择fragment private void slider_animate(int postion) { for (int i = 0; i < 4; i++) { LinearLayout linearLayout = (LinearLayout) nav_container.getChildAt(i); TextView textView = (TextView) linearLayout.getChildAt(1); ImageView imageView = (ImageView) linearLayout.getChildAt(0); if (postion == i) { textView.setTextColor(getResources().getColorStateList(R.color.nav_text_pink)); imageView.setImageDrawable(drawables[i][0]); } else { textView.setTextColor(getResources().getColorStateList(R.color.nav_text_gra)); imageView.setImageDrawable(drawables[i][1]); } } if (mfilst.get(postion) == null) { switch (postion) { case 0: MshopFragment mshopFragment = new MshopFragment(); mfilst.put(postion, mshopFragment); break; case 1: ApplyFragment applyFragment = new ApplyFragment(); mfilst.put(postion, applyFragment); break; case 2: LeagueFragment leagueFragment = new LeagueFragment(); mfilst.put(postion, leagueFragment); break; case 3: MyFragment myFragment = new MyFragment(); mfilst.put(postion, myFragment); break; } } FragmentManager fragmentManager = getSupportFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); if (!mfilst.get(postion).isAdded()) { try { fragmentTransaction.add(R.id.main_container, mfilst.get(postion), String.valueOf(postion)); } catch (Exception e) { e.printStackTrace(); } } for (int i = 0; i < 4; i++) { if (i != postion) { if (mfilst.get(i) != null && mfilst.get(i).isAdded()) { fragmentTransaction.hide(mfilst.get(i)); } } } fragmentTransaction.show(mfilst.get(postion)); fragmentTransaction.commit(); } boolean addList = false; @Override protected void onResume() { super.onResume(); this.addList = false; } @Override protected void onPause() { super.onPause(); } private void intiView(int page_num) { slider_animate(page_num); } private void intidrawable() { drawables[0][0] = getResources().getDrawable(R.mipmap.main_mshop_bottom_pink); drawables[0][1] = getResources().getDrawable(R.mipmap.main_mshop_bottom_gra); drawables[1][0] = getResources().getDrawable(R.mipmap.main_apply_bottom_pink); drawables[1][1] = getResources().getDrawable(R.mipmap.main_apply_bottom_gra); drawables[2][0] = getResources().getDrawable(R.mipmap.main_join_bottom_pink); drawables[2][1] = getResources().getDrawable(R.mipmap.main_join_bottom_gra); drawables[3][0] = getResources().getDrawable(R.mipmap.main_mine_bottom_pink); drawables[3][1] = getResources().getDrawable(R.mipmap.main_mine_bottom_gra); } 错误日志: Caused by: java.lang.IllegalStateException: Fragment already added: LeagueFragment{42e18a48 #1 id=0x7f0a00bb 2} at android.support.v4.app.FragmentManagerImpl.addFragment(FragmentManager.java:1207) at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:673) at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1499) at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:456) at android.os.Handler.handleCallback(Handler.java:615) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4881) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575) at dalvik.system.NativeStart.main(Native Method)

Fragment already added

重点代码如下:一下代码已经完整执行,但是还是报了java.lang.IllegalStateException: Fragment already added重复添加的错误,求大神解决啊! @Override public Object instantiateItem(ViewGroup container, int position) { // System.out.println("instantiateItem..............."); // 得到缓存的fragment Fragment fragment = (Fragment) super.instantiateItem(container, position); // 得到tag String fragmentTag = fragment.getTag(); if (fragmentFlags.get(position % fragmentFlags.size())) { System.out.println("进入instantiateItem该方法了"); FragmentTransaction beginTransaction = fm.beginTransaction(); // 移除旧的fragment beginTransaction.remove(fragment); // 换成新的fragment fragment = mFragments.get(position); // 添加新fragment时必须用前面获得的tag beginTransaction.add(container.getId(), fragment, fragmentTag); beginTransaction.attach(fragment); beginTransaction.commit(); //复位更新标志 fragmentFlags.set(position, false); } return fragment; }

Android中横竖屏切换fragment中数据丢失

![图片说明](https://img-ask.csdn.net/upload/201503/05/1425539070_236849.jpg) 这是竖屏的效果图 ![图片说明](https://img-ask.csdn.net/upload/201503/05/1425539142_485854.jpg) 这是竖屏切横屏的效果图 ![图片说明](https://img-ask.csdn.net/upload/201503/05/1425539239_510996.jpg) 这是横屏切回竖屏的效果图 ![图片说明](https://img-ask.csdn.net/upload/201503/05/1425539269_712728.jpg) 这是横屏再切竖屏的效果图! 求助大神帮我解决一下,我设置了ipconfigchange后只执行这个方法, ![图片说明](https://img-ask.csdn.net/upload/201503/05/1425539510_296755.png) 在这个方法中我横竖切换的时候都重新初始化了布局,fragment我也重新new了,但是第一次进入页面竖屏切横屏才有数据,后面数据都没有了,求大神告知! 竖屏是一个viewPager加载4个fragment,横屏是2个viewpager分别加载2个fragment!

在fragment里,如何在弹出软键盘的时候讲输入框弹在软键盘上面?

如下面2张图,我在点击评论的时候,将软键盘弹出,然后输入文字内容,但是我的输入框被软键盘挡住了,在activity里我能解决这个问题,但是在fragment里怎么解决这个问题啊?![![图片说明](https://img-ask.csdn.net/upload/201703/15/1489548842_203132.png)图片说明](https://img-ask.csdn.net/upload/201703/15/1489548834_415098.png)

首页activity中的fragment加载webview

fragment加载webview内容显示不全,很急,求帮助![图片说明](https://img-ask.csdn.net/upload/201805/09/1525839996_348240.png)

动态的使用Fragment,底部四个按钮的布局怎么写

原文链接http://blog.csdn.net/lmj623565791/article/details/37970961 我是这样写的但是选中底部的按钮后无效果 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:baselineAligned="false" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:id="@+id/tab_bottom_weixin" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button1" android:onClick="onClick" > </Button> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:id="@+id/tab_bottom_friend"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button2" android:onClick="onClick"> </Button> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button3"> </Button> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button4"> </Button> </LinearLayout> <android.support.v4.view.ViewPager android:id="@+id/vPager" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1.0" android:background="#000000" android:flipInterval="30" android:persistentDrawingCache="animation" /> </LinearLayout>

Fragment横竖屏切换时候接口对象为空

//代码如下:就是点击按钮的时候mListener为空!!!为啥 public class LoginDialog extends DialogFragment implements LoginUI{ private Button toRegist; private ToRegistListener mLisntener; @Override @Nullable public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.login_dialog, null); toRegist = (Button) view.findViewById(R.id.toregist); toRegist.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Log.i("asd", "onClick lisntener = "+mLisntener);//横竖屏切换后mListener为空 mLisntener.showRegost(); } }); return view; } @Override public void disminss() { disminss(); } public interface ToRegistListener{ void showRegost(); } @Override public void setListener(ToRegistListener listener) { mLisntener = listener; Log.i("asd", "lisntener = "+mLisntener);//横竖屏切换的时候mListener不为空 } @Override public void showLoginDialog(Activity activity, ToRegistListener listener) { mLisntener = listener; show(activity.getFragmentManager(), "LoginDialog"); }

bottomnavigationbar 底部导航栏会把fragment 下面遮挡一部分

bottomnavigationbar 底部导航栏会把fragment 下面遮挡一部分,有什么方法可以解决这个问题吗?

Android viewpage+fragment 中dialog开了不会自动关掉

我把代码贴下: 开启dialog: ![图片说明](https://img-ask.csdn.net/upload/201603/21/1458553817_458808.png) dialog代码: ![图片说明](https://img-ask.csdn.net/upload/201603/21/1458553858_778320.png) dialog关闭代码: ![图片说明](https://img-ask.csdn.net/upload/201603/21/1458553891_43847.png)

为什么我在FragmentPagerAdapter()里面得不到getChildFragmentManager

为什么我在FragmentPagerAdapter()里面得不到**getChildFragmentManager**,只有getFragmentManager()和getSupportFragmentManager() 代码:::: pager.setAdapter(new FragmentPagerAdapter(...get...Manager) { @Override public Fragment getItem(int position) { return null; } @Override public int getCount() { return 0; } });

linux下利用/proc进行进程树的打印

在linux下利用c语言实现的进程树的打印,主要通过/proc下的目录中的进程文件,获取status中的进程信息内容,然后利用递归实现进程树的打印

设计模式(JAVA语言实现)--20种设计模式附带源码

课程亮点: 课程培训详细的笔记以及实例代码,让学员开始掌握设计模式知识点 课程内容: 工厂模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、原型模型、代理模式、单例模式、适配器模式 策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式 课程特色: 笔记设计模式,用笔记串连所有知识点,让学员从一点一滴积累,学习过程无压力 笔记标题采用关键字标识法,帮助学员更加容易记住知识点 笔记以超链接形式让知识点关联起来,形式知识体系 采用先概念后实例再应用方式,知识点深入浅出 提供授课内容笔记作为课后复习以及工作备查工具 部分图表(电脑PC端查看):

Python数据分析与挖掘

92讲视频课+16大项目实战+源码+¥800元课程礼包+讲师社群1V1答疑+社群闭门分享会=99元 &nbsp; 为什么学习数据分析? &nbsp; &nbsp; &nbsp; 人工智能、大数据时代有什么技能是可以运用在各种行业的?数据分析就是。 &nbsp; &nbsp; &nbsp; 从海量数据中获得别人看不见的信息,创业者可以通过数据分析来优化产品,营销人员可以通过数据分析改进营销策略,产品经理可以通过数据分析洞察用户习惯,金融从业者可以通过数据分析规避投资风险,程序员可以通过数据分析进一步挖掘出数据价值,它和编程一样,本质上也是一个工具,通过数据来对现实事物进行分析和识别的能力。不管你从事什么行业,掌握了数据分析能力,往往在其岗位上更有竞争力。 &nbsp;&nbsp; 本课程共包含五大模块: 一、先导篇: 通过分析数据分析师的一天,让学员了解全面了解成为一个数据分析师的所有必修功法,对数据分析师不在迷惑。 &nbsp; 二、基础篇: 围绕Python基础语法介绍、数据预处理、数据可视化以及数据分析与挖掘......这些核心技能模块展开,帮助你快速而全面的掌握和了解成为一个数据分析师的所有必修功法。 &nbsp; 三、数据采集篇: 通过网络爬虫实战解决数据分析的必经之路:数据从何来的问题,讲解常见的爬虫套路并利用三大实战帮助学员扎实数据采集能力,避免没有数据可分析的尴尬。 &nbsp; 四、分析工具篇: 讲解数据分析避不开的科学计算库Numpy、数据分析工具Pandas及常见可视化工具Matplotlib。 &nbsp; 五、算法篇: 算法是数据分析的精华,课程精选10大算法,包括分类、聚类、预测3大类型,每个算法都从原理和案例两个角度学习,让你不仅能用起来,了解原理,还能知道为什么这么做。

广工操作系统课程设计(文档+代码+可执行文件)

实现作业调度(先来先服务)、进程调度功能(时间片轮转) 实现内存管理功能(连续分配)。 实现文件系统功能(选作) 这些功能要有机地连接起来

Only老K说-爬取妹子图片(简单入门)

安装第三方请求库 requests 被网站禁止了访问 原因是我们是Python过来的 重新给一段 可能还是存在用不了,使用网页的 编写代码 上面注意看匹配内容 User-Agent:请求对象 AppleWebKit:请求内核 Chrome浏览器 //请求网页 import requests import re //正则表达式 就是去不规则的网页里面提取有规律的信息 headers = { 'User-Agent':'存放浏览器里面的' } response = requests.get

linux“开发工具三剑客”速成攻略

工欲善其事,必先利其器。Vim+Git+Makefile是Linux环境下嵌入式开发常用的工具。本专题主要面向初次接触Linux的新手,熟练掌握工作中常用的工具,在以后的学习和工作中提高效率。

Python代码实现飞机大战

文章目录经典飞机大战一.游戏设定二.我方飞机三.敌方飞机四.发射子弹五.发放补给包六.主模块 经典飞机大战 源代码以及素材资料(图片,音频)可从下面的github中下载: 飞机大战源代码以及素材资料github项目地址链接 ————————————————————————————————————————————————————————— 不知道大家有没有打过飞机,喜不喜欢打飞机。当我第一次接触这个东西的时候,我的内心是被震撼到的。第一次接触打飞机的时候作者本人是身心愉悦的,因为周边的朋友都在打飞机, 每

Python数据清洗实战入门

本次课程主要以真实的电商数据为基础,通过Python详细的介绍了数据分析中的数据清洗阶段各种技巧和方法。

2019 Python开发者日-培训

本次活动将秉承“只讲技术,拒绝空谈”的理念,邀请十余位身处一线的Python技术专家,重点围绕Web开发、自动化运维、数据分析、人工智能等技术模块,分享真实生产环境中使用Python应对IT挑战的真知灼见。此外,针对不同层次的开发者,大会还安排了深度培训实操环节,为开发者们带来更多深度实战的机会。

apache-jmeter-5.1.1(Requires Java 8+).zip

。Apache JMeter 5.1.1 (Requires Java 8+),需要jdk8以上的版本。

数通HCNP中文理论全套教材.rar

内涵HCNP-IENP中文理论书-内文,

Python可以这样学(第四季:数据分析与科学计算可视化)

董付国老师系列教材《Python程序设计(第2版)》(ISBN:9787302436515)、《Python可以这样学》(ISBN:9787302456469)配套视频,在教材基础上又增加了大量内容,通过实例讲解numpy、scipy、pandas、statistics、matplotlib等标准库和扩展库用法。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

我以为我对Mysql事务很熟,直到我遇到了阿里面试官

太惨了,面试又被吊打

2019 AI开发者大会

2019 AI开发者大会(AI ProCon 2019)是由中国IT社区CSDN主办的AI技术与产业年度盛会。多年经验淬炼,如今蓄势待发:2019年9月6-7日,大会将有近百位中美顶尖AI专家、知名企业代表以及千余名AI开发者齐聚北京,进行技术解读和产业论证。我们不空谈口号,只谈技术,诚挚邀请AI业内人士一起共铸人工智能新篇章!

图书管理系统(Java + Mysql)我的第一个完全自己做的实训项目

图书管理系统 Java + MySQL 完整实训代码,MVC三层架构组织,包含所有用到的图片资源以及数据库文件,大三上学期实训,注释很详细,按照阿里巴巴Java编程规范编写

Python数据挖掘简易入门

&nbsp; &nbsp; &nbsp; &nbsp; 本课程为Python数据挖掘方向的入门课程,课程主要以真实数据为基础,详细介绍数据挖掘入门的流程和使用Python实现pandas与numpy在数据挖掘方向的运用,并深入学习如何运用scikit-learn调用常用的数据挖掘算法解决数据挖掘问题,为进一步深入学习数据挖掘打下扎实的基础。

C/C++学习指南全套教程

C/C++学习的全套教程,从基本语法,基本原理,到界面开发、网络开发、Linux开发、安全算法,应用尽用。由毕业于清华大学的业内人士执课,为C/C++编程爱好者的教程。

微信公众平台开发入门

本套课程的设计完全是为初学者量身打造,课程内容由浅入深,课程讲解通俗易懂,代码实现简洁清晰。通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有什么特点,它能做什么,怎么开发公众号。 其次,通过本课程的学习,学员能够掌握微信公众平台开发的方法、技术和应用实现。例如,开发者文档怎么看,开发环境怎么搭建,基本的消息交互如何实现,常用的方法技巧有哪些,真实应用怎么开发。

三个项目玩转深度学习(附1G源码)

从事大数据与人工智能开发与实践约十年,钱老师亲自见证了大数据行业的发展与人工智能的从冷到热。事实证明,计算机技术的发展,算力突破,海量数据,机器人技术等,开启了第四次工业革命的序章。深度学习图像分类一直是人工智能的经典任务,是智慧零售、安防、无人驾驶等机器视觉应用领域的核心技术之一,掌握图像分类技术是机器视觉学习的重中之重。针对现有线上学习的特点与实际需求,我们开发了人工智能案例实战系列课程。打造:以项目案例实践为驱动的课程学习方式,覆盖了智能零售,智慧交通等常见领域,通过基础学习、项目案例实践、社群答疑,三维立体的方式,打造最好的学习效果。

2021考研数学张宇基础30讲.pdf

张宇:博士,全国著名考研数学辅导专家,教育部“国家精品课程建设骨干教师”,全国畅销书《张宇高等数学18讲》《张宇线性代数9讲》《张宇概率论与数理统计9讲》《张宇考研数学题源探析经典1000题》《张宇考

专为程序员设计的数学课

<p> 限时福利限时福利,<span>15000+程序员的选择!</span> </p> <p> 购课后添加学习助手(微信号:csdn590),按提示消息领取编程大礼包!并获取讲师答疑服务! </p> <p> <br> </p> <p> 套餐中一共包含5门程序员必学的数学课程(共47讲) </p> <p> 课程1:《零基础入门微积分》 </p> <p> 课程2:《数理统计与概率论》 </p> <p> 课程3:《代码学习线性代数》 </p> <p> 课程4:《数据处理的最优化》 </p> <p> 课程5:《马尔可夫随机过程》 </p> <p> <br> </p> <p> 哪些人适合学习这门课程? </p> <p> 1)大学生,平时只学习了数学理论,并未接触如何应用数学解决编程问题; </p> <p> 2)对算法、数据结构掌握程度薄弱的人,数学可以让你更好的理解算法、数据结构原理及应用; </p> <p> 3)看不懂大牛代码设计思想的人,因为所有的程序设计底层逻辑都是数学; </p> <p> 4)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; </p> <p> 5)想修炼更好的编程内功,在遇到问题时可以灵活的应用数学思维解决问题。 </p> <p> <br> </p> <p> 在这门「专为程序员设计的数学课」系列课中,我们保证你能收获到这些:<br> <br> <span> </span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">①价值300元编程课程大礼包</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">②应用数学优化代码的实操方法</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">③数学理论在编程实战中的应用</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">④程序员必学的5大数学知识</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">⑤人工智能领域必修数学课</span> </p> <p> <br> 备注:此课程只讲程序员所需要的数学,即使你数学基础薄弱,也能听懂,只需要初中的数学知识就足矣。<br> <br> 如何听课? </p> <p> 1、登录CSDN学院 APP 在我的课程中进行学习; </p> <p> 2、登录CSDN学院官网。 </p> <p> <br> </p> <p> 购课后如何领取免费赠送的编程大礼包和加入答疑群? </p> <p> 购课后,添加助教微信:<span> csdn590</span>,按提示领取编程大礼包,或观看付费视频的第一节内容扫码进群答疑交流! </p> <p> <img src="https://img-bss.csdn.net/201912251155398753.jpg" alt=""> </p>

DDR5_Draft_Spec_Rev05c.pdf

DDR5 spec

Java面试史上最全的JAVA专业术语面试100问 (前1-50)

前言: 说在前面, 面试题是根据一些朋友去面试提供的,再就是从网上整理了一些。 先更新50道,下一波吧后面的也更出来。 求赞求关注!! 废话也不多说,现在就来看看有哪些面试题 1、面向对象的特点有哪些? 抽象、继承、封装、多态。 2、接口和抽象类有什么联系和区别? 3、重载和重写有什么区别? 4、java有哪些基本数据类型? 5、数组有没有length()方法?String有没有length()方法? 数组没有length()方法,它有length属性。 String有length()方法。 集合求长度用

网络工程师小白入门--【思科CCNA、华为HCNA等网络工程师认证】

本课程适合CCNA或HCNA网络小白同志,高手请绕道,可以直接学习进价课程。通过本预科课程的学习,为学习网络工程师、思科CCNA、华为HCNA这些认证打下坚实的基础! 重要!思科认证2020年2月24日起,已启用新版认证和考试,包括题库都会更新,由于疫情原因,请关注官网和本地考点信息。题库网络上很容易下载到。

C/C++跨平台研发从基础到高阶实战系列套餐

一 专题从基础的C语言核心到c++ 和stl完成基础强化; 二 再到数据结构,设计模式完成专业计算机技能强化; 三 通过跨平台网络编程,linux编程,qt界面编程,mfc编程,windows编程,c++与lua联合编程来完成应用强化 四 最后通过基于ffmpeg的音视频播放器,直播推流,屏幕录像,

Python界面版学生管理系统

前不久上传了一个控制台版本的学生管理系统,这个是Python界面版学生管理系统,这个是使用pycharm开发的一个有界面的学生管理系统,基本的增删改查,里面又演示视频和完整代码,有需要的伙伴可以自行下

2019数学建模A题高压油管的压力控制 省一论文即代码

2019数学建模A题高压油管的压力控制省一完整论文即详细C++和Matlab代码,希望对同学们有所帮助

4小时玩转微信小程序——基础入门与微信支付实战

这是一个门针对零基础学员学习微信小程序开发的视频教学课程。课程采用腾讯官方文档作为教程的唯一技术资料来源。杜绝网络上质量良莠不齐的资料给学员学习带来的障碍。 视频课程按照开发工具的下载、安装、使用、程序结构、视图层、逻辑层、微信小程序等几个部分组织课程,详细讲解整个小程序的开发过程

实现简单的文件系统

实验内容: 通过对具体的文件存储空间的管理、文件的物理结构、目录结构和文件操作的实现,加深对文件系统内部功能和实现过程的理解。 要求: 1.在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个简

相关热词 c#分级显示数据 c# 不区分大小写替换 c#中调用就java c#正则表达式 验证小数 c# vscode 配置 c#三维数组能存多少数据 c# 新建excel c#多个文本框 c#怎么创建tcp通讯 c# mvc 电子病例
立即提问