ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

团队冲刺01

2022-06-14 08:03:24  阅读:135  来源: 互联网

标签:01 冲刺 new import android 团队 data id op


今天没有做搜索功能的内容,学习了学习fragment,想做底部导航栏。

遇到的问题:界面画好了但是不知道怎么和以前现在方法连接起来,而且我发现好像和fragment相连的layout文件中写了ListView之后,运行程序不成功。

明天继续学习fragment,并做好搜索功能

ShowFragment.java:

复制代码
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ListView;

import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.fragment.app.Fragment;

import com.google.android.material.floatingactionbutton.FloatingActionButton;

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

public class ShowFragment extends Fragment {
    final String TAG = "tag";
    /*private Context context = this;*/
    private NoteDatabase dbHelper;
    FloatingActionButton btn_add;
    private ListView lv_note;
    private NoteAdapter adapter;
    private List<Note> noteList = new ArrayList<Note>();
    private Toolbar myToolbar;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        View view = View.inflate(getActivity(),R.layout.fragment_show,null);

        /*btn_add = view.findViewById(R.id.btn_add);
        btn_add.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,EditActivity.class);
                intent.putExtra("mode",4);  //新建笔记的mode设为4
                startActivityForResult(intent,0);
            }
        });*/
        lv_note = view.findViewById(R.id.lv_note);
        //myToolbar = view.findViewById(R.id.Toolbar_main);
        /*setSupportActionBar(myToolbar);
        getSupportActionBar().setHomeButtonEnabled(true);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true); */ //用自定义的工具栏代替本身的活动栏


        //初始化adapter
        adapter = new NoteAdapter(getActivity().getApplicationContext(),noteList);
        lv_note.setAdapter(adapter);

        lv_note.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                switch (parent.getId()) {
                    case R.id.lv_note:
                        Note curNote = (Note) parent.getItemAtPosition(position);
                        Intent intent = new Intent(getActivity(), EditActivity.class);
                        intent.putExtra("content", curNote.getContent());
                        intent.putExtra("id", curNote.getId());
                        intent.putExtra("time", curNote.getTime());
                        intent.putExtra("mode", 3);     // MODE of 'click to edit'  修改笔记的mode设为3
                        intent.putExtra("tag", curNote.getTag());
                        startActivityForResult(intent, 1);      //collect data from edit
                        Log.d(TAG, "onItemClick: " + position);
                        break;
                }
            }
        });
        refreshListView();
        return view;
    }




    @Override
    public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {

        int returnMode;  //-1不改变 0创建一个新笔记 1修改当前笔记
        long note_id;
        returnMode = data.getExtras().getInt("mode",-1);
        note_id = data.getExtras().getLong("id",0);
        //修改笔记
        if(returnMode == 1){
            String content = data.getStringExtra("content");
            String time = data.getStringExtra("time");
            int tag = data.getExtras().getInt("tag",1);
            Note newNote = new Note(content,time,tag);
            newNote.setId(note_id);
            dao op = new dao(getActivity().getApplicationContext());
            op.open();
            op.updateNote(newNote);
            op.close();
            //refreshListView();
        }
        //新建笔记
        else if (returnMode == 0) {
            String content = data.getExtras().getString("content");
            String time = data.getExtras().getString("time");
            int tag = data.getExtras().getInt("tag", 1);

            Note newNote = new Note(content, time, tag);
            dao op = new dao(getActivity().getApplicationContext());
            op.open();
            op.addNote(newNote);
            op.close();
        }
        //删除笔记
        else if (returnMode == 2){
            Note delNote = new Note();
            delNote.setId(note_id);
            dao op = new dao(getActivity().getApplicationContext());
            op.open();
            op.removeNote(delNote);
            op.close();
        }
        refreshListView();
        super.onActivityResult(requestCode, resultCode, data);

    }
    //刷新页面,有问题 运行程序 有这段代码会闪退
    /*public void refreshListView(){
        dao op = new dao(getApplicationContext());
        if(noteList.size() > 0){
            noteList.clear();
        }
        noteList.addAll(op.getAllNotes());
        op.close();
        adapter.notifyDataSetChanged();
    }*/

    //导航栏上的图标
    /*@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main_menu,menu);
        return super.onCreateOptionsMenu(menu);
    }*/

    //刷新listview
    public void refreshListView() {
        SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());

        dao op = new dao(getActivity().getApplicationContext());
        op.open();

        // set adapter
        if (noteList.size() > 0) noteList.clear();
        noteList.addAll(op.getAllNotes());
        /*if (sharedPreferences.getBoolean("reverseSort", false)) sortNotes(noteList, 2);
        else sortNotes(noteList, 1);*/
        op.close();
        adapter.notifyDataSetChanged();


    }

}
复制代码

标签:01,冲刺,new,import,android,团队,data,id,op
来源: https://www.cnblogs.com/9d629/p/16372999.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有