在Android编程中使用Fragment

用户名

我正在练习Android应用开发,观看了YouTube视频。除导入部分外,以下代码与讲师编码的结果完全相同。即使代码相同,我的代码也有4个错误(这就是为什么我添加了一些导入部分;;)

您能否看一下并教我如何修复它们?我在这里看到了类似的问题,但是他们的解决方案无效。

我得到了“ activity_input.xml”来显示按钮和片段。以下代码在“ InputActivity.java”上。片段的三个xml和Java文件。分别是“ Fragment1.java”,“ Fragment2.java”,“ StartFragment.java”,“ fragment1.xml”,“ fragment2.xml”,“ start_fragment.xml”。

两个按钮的ID为“ btn1”,“ btn2”。将显示片段的布局的ID为“ myFragment”

package com.example.money;

import android.app.Fragment;
import android.os.Bundle;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.app.Activity;

public class InputActivity extends Activity {

    Fragment fragment;
    Button btn1, btn2, btn3;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_input);
        btn1=(Button)findViewById(R.id.btn1);
        btn2=(Button)findViewById(R.id.btn2);

        FragmentManager fm = getFragmentManager(); //Here error 1 on getFragmentManager();
        FragmentTransaction ft = fm.beginTransaction();

        StartFragment myFragment = new StartFragment();
        ft.add(R.id.myFragment, myFragment);  ////Here error 2 on add
        ft.commit();

        btn1.setOnClickListener(btnOnClickListener);
        btn2.setOnClickListener(btnOnClickListener);

    }

    Button.OnClickListener btnOnClickListener = new Button.OnClickListener() {
        @Override
        public void onClick(View v) {

            Fragment newFragment;

            if (v == btn1)
                newFragment = new Fragment1();
            else if (v == btn2)
                newFragment = new Fragment2();
            else
                newFragment = new StartFragment();

            FragmentTransaction transaction = getFragmentManager().beginTransaction();
            //Here error 3 on getFragmentManager().beginTransaction()
            //Here error 4 on replace
            transaction.replace(R.id.myFragment, newFragment);
            transaction.addToBackStack(null);
            transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
            transaction.commit();

        } 
    };
}
皮尤什

使用此代码,并在eclipse中使用control + shift + o。正确组织导入,并正确选择。

import android.app.Fragment;
import android.os.Bundle;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.app.Activity;

public class InputActivity extends Activity {

    Fragment fragment;
    Button btn1, btn2, btn3;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.to_do_list);
        btn1=(Button)findViewById(R.id.btn1);
        btn2=(Button)findViewById(R.id.btn2);

        android.app.FragmentManager fm = getFragmentManager(); 
        android.app.FragmentTransaction ft = fm.beginTransaction();

        StartFragment myFragment = new StartFragment();
        ft.add(myFragment,R.id.myFragment);  
        ft.commit();

        btn1.setOnClickListener(btnOnClickListener);
        btn2.setOnClickListener(btnOnClickListener);

    }

    Button.OnClickListener btnOnClickListener = new Button.OnClickListener() {
        @Override
        public void onClick(View v) {

            Fragment newFragment;

            if (v == btn1)
                newFragment = new Fragment1();
            else if (v == btn2)
                newFragment = new Fragment2();
            else
                newFragment = new StartFragment();

            android.app.FragmentTransaction transaction = getFragmentManager().beginTransaction();

            transaction.replace(R.id.myFragment, newFragment);
            transaction.addToBackStack(null);
            transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
            transaction.commit();

        } 
    };
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Android的Fragment中使用Google Maps

来自分类Dev

如何在Android Fragment中使用ListView

来自分类Dev

在Android中使用Fragment时发生ClassCastException

来自分类Dev

以编程方式在Android日历中使用规则创建事件

来自分类Dev

Android - 编程风格 - RecyclerView - 在 ViewHolder 或 onBindViewHolder 中使用 SetText?

来自分类Dev

在Fragment中使用smoothScrollTo

来自分类Dev

在Fragment中使用smoothScrollTo

来自分类常见问题

如何在Kotlin的Fragment中使用Android AlarmManager?

来自分类Dev

如何在android.app.Fragment中使用Facebook SDK

来自分类Dev

在CoordinatorLayout Android内部的ViewPager Fragment中使用NestedScrollView突然滚动

来自分类Dev

如何在Android的Fragment类中使用Activity代码?

来自分类Dev

在Android中使用Fragment会导致VM关闭

来自分类Dev

startActivityForResults时,Android Espresso-Intents无法在Fragment中使用

来自分类Dev

在 ListView android 中使用 Fragment 时出现 NullReferenceException

来自分类Dev

在 Android 中使用 RecyclerView 保存/恢复 Fragment 状态

来自分类Dev

在Android编程中使用与Java编程相同的方法是否有意义?

来自分类Dev

在Java编程中使用模块

来自分类Dev

在R编程中使用因素

来自分类Dev

onOptionsItemsSelected未在Fragment中使用

来自分类Dev

在 Fragment 中使用 CustomView 的 ClassCastException

来自分类Dev

如何在java类中以编程方式使用<merge>标签而不在android中使用xml布局?

来自分类Dev

在 Android Fragment 中使用 Proteus,但在投射 inflater 时出错 - Proteus Android Layout Engine

来自分类Dev

在Android应用程序中使用JavaScript以编程方式登录网站

来自分类Dev

以编程方式在Android应用中使用YouTube迷你播放器

来自分类Dev

如何在Android编程中使用jsoup从html获取此脚本

来自分类Dev

如何以编程方式在android中使用ImageView创建单色图像?

来自分类Dev

在ActionBar中使用UP插入符号可从Activity转到Fragment-Android 4.0+

来自分类Dev

如何在Android的Fragment中使用'bundle'而不是'intent.putExtra()'

来自分类Dev

如何在Android的Fragment中使用'bundle'而不是'intent.putExtra()'

Related 相关文章

  1. 1

    在Android的Fragment中使用Google Maps

  2. 2

    如何在Android Fragment中使用ListView

  3. 3

    在Android中使用Fragment时发生ClassCastException

  4. 4

    以编程方式在Android日历中使用规则创建事件

  5. 5

    Android - 编程风格 - RecyclerView - 在 ViewHolder 或 onBindViewHolder 中使用 SetText?

  6. 6

    在Fragment中使用smoothScrollTo

  7. 7

    在Fragment中使用smoothScrollTo

  8. 8

    如何在Kotlin的Fragment中使用Android AlarmManager?

  9. 9

    如何在android.app.Fragment中使用Facebook SDK

  10. 10

    在CoordinatorLayout Android内部的ViewPager Fragment中使用NestedScrollView突然滚动

  11. 11

    如何在Android的Fragment类中使用Activity代码?

  12. 12

    在Android中使用Fragment会导致VM关闭

  13. 13

    startActivityForResults时,Android Espresso-Intents无法在Fragment中使用

  14. 14

    在 ListView android 中使用 Fragment 时出现 NullReferenceException

  15. 15

    在 Android 中使用 RecyclerView 保存/恢复 Fragment 状态

  16. 16

    在Android编程中使用与Java编程相同的方法是否有意义?

  17. 17

    在Java编程中使用模块

  18. 18

    在R编程中使用因素

  19. 19

    onOptionsItemsSelected未在Fragment中使用

  20. 20

    在 Fragment 中使用 CustomView 的 ClassCastException

  21. 21

    如何在java类中以编程方式使用<merge>标签而不在android中使用xml布局?

  22. 22

    在 Android Fragment 中使用 Proteus,但在投射 inflater 时出错 - Proteus Android Layout Engine

  23. 23

    在Android应用程序中使用JavaScript以编程方式登录网站

  24. 24

    以编程方式在Android应用中使用YouTube迷你播放器

  25. 25

    如何在Android编程中使用jsoup从html获取此脚本

  26. 26

    如何以编程方式在android中使用ImageView创建单色图像?

  27. 27

    在ActionBar中使用UP插入符号可从Activity转到Fragment-Android 4.0+

  28. 28

    如何在Android的Fragment中使用'bundle'而不是'intent.putExtra()'

  29. 29

    如何在Android的Fragment中使用'bundle'而不是'intent.putExtra()'

热门标签

归档