package com.rdc.bms.mvp.activity;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.net.Uri;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.os.Bundle;
import android.support.v7.app.AlertDialog;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.util.Log;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.view.inputmethod.EditorInfo;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.bumptech.glide.Glide;
import com.rdc.bms.base.BaseActivity;
import com.rdc.bms.base.BasePresenter;
import com.rdc.bms.bookmanagementsystem.R;
import com.rdc.bms.config.Constants;
import com.rdc.bms.dto.SearchBookDTO;
import com.rdc.bms.dto.SimpleDTO;
import com.rdc.bms.entity.Book;
import com.rdc.bms.mvp.fragment.BookManageFragment;
import com.rdc.bms.util.GsonUtil;
import com.rdc.bms.util.ImageUtil;
import com.rdc.bms.util.OkHttpResultCallback;
import com.rdc.bms.util.OkHttpUtil;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
import okhttp3.Call;
import static com.rdc.bms.config.Constants.SHOW_PICTURE;
public class BookManageActivity extends BaseActivity {
@BindView(R.id.tv_title_layout_top)
TextView mTvTitle;
@BindView(R.id.iv_back_layout_top)
ImageView mIvBack;
@BindView(R.id.iv_option2_layout_top)
ImageView mIvAddBook;
@BindView(R.id.tv_cancel_layout_search)
TextView mTvCancel;
@BindView(R.id.et_search_layout_search)
EditText mEtSearch;
@BindView(R.id.iv_delete_layout_search)
ImageView mIvDelete;
@BindView(R.id.iv_option1_layout_top)
ImageView mIvShowAll;
private BookManageFragment mBookManageFragment;
private int mAllBookPage = -1;//显示全部书籍的Page
private AlertDialog mBookDialog;
public static final int ADD_BOOK_OPTION = 0;
public static final int UPDATE_BOOK_OPTION = 1;
private ImageView mIvCover;
private String mImagePath;
private boolean mIsChooseImage = false;
private int mType = 0;
private int mPage = 0;
private boolean isShowALL = true;
private String mOldKey = "";
private int mOldType = mType;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
protected int setLayoutResID() {
return R.layout.activity_book_manage;
}
@Override
protected BasePresenter getInstance() {
return null;
}
@Override
protected void initData(Bundle savedInstanceState) {
mBookManageFragment = BookManageFragment.newInstance();
}
@Override
protected void initView() {
mTvCancel.setText("书籍名");
mTvTitle.setText("书籍管理");
mIvShowAll.setImageResource(R.drawable.iv_show_all);
mIvShowAll.setVisibility(View.VISIBLE);
mIvAddBook.setVisibility(View.VISIBLE);
mIvAddBook.setImageResource(R.drawable.iv_plus);
mIvBack.setVisibility(View.VISIBLE);
mEtSearch.setHint("按书籍名搜索");
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction transaction = fm.beginTransaction();
transaction.replace(R.id.container_act_book_manage, mBookManageFragment);
transaction.commitNow();
}
@Override
protected void initToolbar() {
}
@Override
protected void initListener() {
mTvCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showSelectDialog();
}
});
mIvShowAll.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mEtSearch.setText("");
mPage = 0;
mAllBookPage = -1;
isShowALL = true;
mBookManageFragment.setCanShowLoadMore(true);
searchAllBook();
Toast.makeText(BookManageActivity.this, "显示全部书籍!", Toast.LENGTH_SHORT).show();
}
});
mIvAddBook.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showAddBookDialog(ADD_BOOK_OPTION,null);
}
});
mIvBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
mIvDelete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mEtSearch.setText("");
}
});
mEtSearch.addTextChangedListener(new TextWatcher() {
// boolean isHidedList = false;
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
if (TextUtils.isEmpty(s)){
mIvDelete.setVisibility(View.INVISIBLE);
}else {
mIvDelete.setVisibility(View.VISIBLE);
}
}
});
mEtSearch.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event){
if (actionId == EditorInfo.IME_ACTION_SEND
|| actionId == EditorInfo.IME_ACTION_DONE
|| (event != null
&& KeyEvent.KEYCODE_ENTER == event.getKeyCode()
&& KeyEvent.ACTION_DOWN == event.getAction())) {
isShowALL = false;
String key = getString(mEtSearch);
if (!TextUtils.isEmpty(key)){
if (mOldKey.equals(key) && mOldType == mType){
mPage++;
}else {
mPage = 0;
mBookManageFragment.setCanShowLoadMore(true);
}
searchBook(key,mType,mPage);
mOldKey = key;
mOldType = mType;
}else {
Toast.makeText(BookManageActivity.this, "关键字不能为空!", Toast.LENGTH_SHORT).show();
}
}
return true;
}
});
}
public void onLoadMore(){
if (isShowALL){
searchAllBook();
}else {
mPage++;
searchBook(mOldKey,mOldType,mPage);
}
}
/**
* 选择搜索关键字的类型的Dialog
*/
private void showSelectDialog(){
String[] items = {"书籍名","书籍ID","作者"};
AlertDialog.Builder builder =
new AlertDialog.Builder(this)
.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which){
case 0:
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Java是一种高性能、跨平台的面向对象编程语言。它由Sun Microsystems(现在是Oracle Corporation)的James Gosling等人在1995年推出,被设计为一种简单、健壮、可移植、多线程、动态的语言。Java的主要特点和优势包括以下几个方面: 跨平台性(Write Once, Run Anywhere): Java的代码可以在不同的平台上运行,只需编写一次代码,就可以在任何支持Java的设备上执行。这得益于Java虚拟机(JVM),它充当了代码和底层硬件之间的中介。 面向对象: Java是一种纯粹的面向对象编程语言,支持封装、继承和多态等面向对象的概念。这使得Java编写的代码更加模块化、可维护和可扩展。 多线程支持: Java内置了对多线程的支持,允许程序同时执行多个任务。这对于开发需要高并发性能的应用程序(如服务器端应用、网络应用等)非常重要。 自动内存管理(垃圾回收): Java具有自动内存管理机制,通过垃圾回收器自动回收不再使用的对象,使得开发者不需要手动管理内存,减轻了程序员的负担,同时也减少了内存泄漏的风险。
资源推荐
资源详情
资源评论
收起资源包目录
Android 图书管理系统APP.zip (189个子文件)
gradlew.bat 2KB
.gitignore 176B
.gitignore 7B
.gitignore 7B
build.gradle 2KB
build.gradle 871B
build.gradle 611B
settings.gradle 43B
gradlew 5KB
gradle-wrapper.jar 53KB
BookManageActivity.java 22KB
BorrowManageActivity.java 16KB
RvSimpleAdapter.java 13KB
ReaderManageActivity.java 10KB
AbsBaseFragment.java 9KB
OkHttpUtil.java 8KB
ImageUtil.java 7KB
ReaderManageFragment.java 6KB
GsonUtil.java 6KB
InfoDetailActivity.java 6KB
BookManageFragment.java 6KB
LoginActivity.java 5KB
SearchDetailFragment.java 5KB
BaseRecyclerViewAdapter.java 4KB
MainActivity.java 4KB
BaseRvAdapter.java 4KB
HotKeyFragment.java 4KB
InfoModel.java 3KB
BookDetailActivity.java 3KB
MyBorrowRecordActivity.java 3KB
SearchActivity.java 3KB
BorrowManageFragment.java 3KB
SearchModel.java 3KB
ManageFragment.java 2KB
BorrowRecordModel.java 2KB
UserUtil.java 2KB
BookCell.java 2KB
BorrowRecordCell.java 2KB
Book.java 2KB
BaseRvAdapter.java 2KB
BaseFragment.java 2KB
LoginModel.java 2KB
MineFragment.java 2KB
BaseRvStateCell.java 2KB
BaseActivity.java 2KB
User.java 2KB
MyBorrowRecordFragment.java 2KB
BannerCell.java 2KB
ReaderCell.java 2KB
BaseRvViewHolder.java 1KB
BorrowRecord.java 1KB
InfoDetailPresenter.java 1KB
OkHttpCookieJar.java 1KB
LoadMoreCell.java 1013B
BorrowRecordPresenter.java 975B
KeyCell.java 959B
EmptyCell.java 936B
SearchPresenter.java 896B
App.java 861B
LoginPresenter.java 812B
LoadingCell.java 803B
ErrorCell.java 795B
BorrowRecordDTO.java 782B
ExampleInstrumentedTest.java 748B
ExampleInstrumentedTest.java 743B
TipFragment.java 671B
ActivityCollectorUtil.java 654B
IInfoDetail.java 609B
IBorrowRecord.java 577B
LoginDTO.java 573B
Cell.java 566B
SearchUserDTO.java 552B
BaseDTO.java 509B
ISearchContract.java 505B
SearchBookDTO.java 491B
BaseRvCell.java 454B
Utils.java 450B
Constants.java 420B
ILoginContract.java 411B
ExampleUnitTest.java 393B
ExampleUnitTest.java 388B
OnClickViewRvListener.java 371B
SimpleDTO.java 333B
ItemType.java 329B
BasePresenter.java 322B
ItemType.java 282B
OnClickRecyclerViewListener.java 201B
OkHttpResultCallback.java 172B
OnViewClickRecyclerViewListener.java 164B
fileprovider.java 127B
book_image_1.jpg 40KB
ic_launcher_round.png 15KB
iv_avatar.png 11KB
ic_launcher_round.png 10KB
ic_launcher.png 9KB
iv_app_ic_white.png 9KB
tab_manage_grey.png 7KB
ic_launcher_round.png 7KB
tab_manage_blue.png 7KB
ic_launcher.png 6KB
共 189 条
- 1
- 2
资源评论
JJJ69
- 粉丝: 6216
- 资源: 5783
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功