Commit 089948c6 authored by fallenstardust's avatar fallenstardust

EventBus传this而不能是context

parent 6a37a700
package cn.garymb.ygomobile.ui.home; package cn.garymb.ygomobile.ui.home;
import static cn.garymb.ygomobile.Constants.ASSET_SERVER_LIST;
import android.content.Intent; import android.content.Intent;
import android.net.Uri; import android.net.Uri;
import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.text.TextUtils;
import android.util.SparseArray; import android.util.SparseArray;
import android.view.Gravity; import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu; import android.view.Menu;
import android.view.MenuItem; import android.view.MenuItem;
import android.view.View; import android.view.View;
import android.view.inputmethod.EditorInfo;
import android.widget.Button; import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.navigation.NavController; import androidx.navigation.NavController;
import androidx.navigation.Navigation; import androidx.navigation.Navigation;
import androidx.navigation.ui.AppBarConfiguration; import androidx.navigation.ui.AppBarConfiguration;
import androidx.navigation.ui.NavigationUI; import androidx.navigation.ui.NavigationUI;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.google.android.material.bottomnavigation.BottomNavigationView; import com.google.android.material.bottomnavigation.BottomNavigationView;
import com.ourygo.assistant.base.listener.OnDuelAssistantListener; import com.ourygo.assistant.base.listener.OnDuelAssistantListener;
...@@ -36,41 +24,24 @@ import com.ourygo.assistant.util.DuelAssistantManagement; ...@@ -36,41 +24,24 @@ import com.ourygo.assistant.util.DuelAssistantManagement;
import com.ourygo.assistant.util.Util; import com.ourygo.assistant.util.Util;
import com.tencent.bugly.beta.Beta; import com.tencent.bugly.beta.Beta;
import com.tencent.smtt.sdk.QbSdk; import com.tencent.smtt.sdk.QbSdk;
import com.tubb.smrv.SwipeMenuRecyclerView;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.io.File; import java.io.File;
import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;
import java.util.List;
import cn.garymb.ygodata.YGOGameOptions;
import cn.garymb.ygomobile.AppsSettings; import cn.garymb.ygomobile.AppsSettings;
import cn.garymb.ygomobile.Constants; import cn.garymb.ygomobile.Constants;
import cn.garymb.ygomobile.YGOStarter;
import cn.garymb.ygomobile.bean.Deck; import cn.garymb.ygomobile.bean.Deck;
import cn.garymb.ygomobile.bean.ServerInfo;
import cn.garymb.ygomobile.bean.ServerList;
import cn.garymb.ygomobile.bean.events.ServerInfoEvent;
import cn.garymb.ygomobile.lite.BuildConfig; import cn.garymb.ygomobile.lite.BuildConfig;
import cn.garymb.ygomobile.lite.R; import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.loader.ImageLoader; import cn.garymb.ygomobile.loader.ImageLoader;
import cn.garymb.ygomobile.ui.activities.BaseActivity; import cn.garymb.ygomobile.ui.activities.BaseActivity;
import cn.garymb.ygomobile.ui.activities.WebActivity; import cn.garymb.ygomobile.ui.activities.WebActivity;
import cn.garymb.ygomobile.ui.adapters.ServerListAdapter;
import cn.garymb.ygomobile.ui.adapters.SimpleListAdapter;
import cn.garymb.ygomobile.ui.cards.CardDetailRandom; import cn.garymb.ygomobile.ui.cards.CardDetailRandom;
import cn.garymb.ygomobile.ui.cards.CardSearchActivity; import cn.garymb.ygomobile.ui.cards.CardSearchActivity;
import cn.garymb.ygomobile.ui.cards.DeckManagerActivity; import cn.garymb.ygomobile.ui.cards.DeckManagerActivity;
import cn.garymb.ygomobile.ui.cards.deck.DeckUtils; import cn.garymb.ygomobile.ui.cards.deck.DeckUtils;
import cn.garymb.ygomobile.ui.plus.DialogPlus; import cn.garymb.ygomobile.ui.plus.DialogPlus;
import cn.garymb.ygomobile.ui.plus.VUiKit;
import cn.garymb.ygomobile.ui.preference.SettingsActivity; import cn.garymb.ygomobile.ui.preference.SettingsActivity;
import cn.garymb.ygomobile.ui.widget.Shimmer;
import cn.garymb.ygomobile.ui.widget.ShimmerTextView;
import cn.garymb.ygomobile.utils.FileLogUtil; import cn.garymb.ygomobile.utils.FileLogUtil;
import cn.garymb.ygomobile.utils.ScreenUtil; import cn.garymb.ygomobile.utils.ScreenUtil;
import cn.garymb.ygomobile.utils.YGOUtil; import cn.garymb.ygomobile.utils.YGOUtil;
...@@ -230,7 +201,6 @@ public abstract class HomeActivity extends BaseActivity implements OnDuelAssista ...@@ -230,7 +201,6 @@ public abstract class HomeActivity extends BaseActivity implements OnDuelAssista
protected void onDestroy() { protected void onDestroy() {
super.onDestroy(); super.onDestroy();
duelAssistantManagement.removeDuelAssistantListener(this); duelAssistantManagement.removeDuelAssistantListener(this);
EventBus.getDefault().unregister(this);
} }
@Override @Override
......
...@@ -3,7 +3,6 @@ package cn.garymb.ygomobile.ui.home; ...@@ -3,7 +3,6 @@ package cn.garymb.ygomobile.ui.home;
import static cn.garymb.ygomobile.Constants.ASSET_SERVER_LIST; import static cn.garymb.ygomobile.Constants.ASSET_SERVER_LIST;
import android.content.Intent; import android.content.Intent;
import android.net.Uri;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.text.TextUtils; import android.text.TextUtils;
...@@ -31,7 +30,6 @@ import org.greenrobot.eventbus.ThreadMode; ...@@ -31,7 +30,6 @@ import org.greenrobot.eventbus.ThreadMode;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.IOException;
import java.util.List; import java.util.List;
import cn.garymb.ygodata.YGOGameOptions; import cn.garymb.ygodata.YGOGameOptions;
...@@ -40,7 +38,6 @@ import cn.garymb.ygomobile.AppsSettings; ...@@ -40,7 +38,6 @@ import cn.garymb.ygomobile.AppsSettings;
import cn.garymb.ygomobile.Constants; import cn.garymb.ygomobile.Constants;
import cn.garymb.ygomobile.YGOStarter; import cn.garymb.ygomobile.YGOStarter;
import cn.garymb.ygomobile.base.BaseFragemnt; import cn.garymb.ygomobile.base.BaseFragemnt;
import cn.garymb.ygomobile.bean.Deck;
import cn.garymb.ygomobile.bean.ServerInfo; import cn.garymb.ygomobile.bean.ServerInfo;
import cn.garymb.ygomobile.bean.ServerList; import cn.garymb.ygomobile.bean.ServerList;
import cn.garymb.ygomobile.bean.events.ServerInfoEvent; import cn.garymb.ygomobile.bean.events.ServerInfoEvent;
...@@ -49,14 +46,11 @@ import cn.garymb.ygomobile.ui.activities.FileLogActivity; ...@@ -49,14 +46,11 @@ import cn.garymb.ygomobile.ui.activities.FileLogActivity;
import cn.garymb.ygomobile.ui.adapters.ServerListAdapter; import cn.garymb.ygomobile.ui.adapters.ServerListAdapter;
import cn.garymb.ygomobile.ui.adapters.SimpleListAdapter; import cn.garymb.ygomobile.ui.adapters.SimpleListAdapter;
import cn.garymb.ygomobile.ui.cards.CardSearchActivity; import cn.garymb.ygomobile.ui.cards.CardSearchActivity;
import cn.garymb.ygomobile.ui.cards.DeckManagerActivity;
import cn.garymb.ygomobile.ui.cards.deck.DeckUtils;
import cn.garymb.ygomobile.ui.mycard.MyCardActivity; import cn.garymb.ygomobile.ui.mycard.MyCardActivity;
import cn.garymb.ygomobile.ui.plus.DialogPlus; import cn.garymb.ygomobile.ui.plus.DialogPlus;
import cn.garymb.ygomobile.ui.plus.VUiKit; import cn.garymb.ygomobile.ui.plus.VUiKit;
import cn.garymb.ygomobile.ui.widget.Shimmer; import cn.garymb.ygomobile.ui.widget.Shimmer;
import cn.garymb.ygomobile.ui.widget.ShimmerTextView; import cn.garymb.ygomobile.ui.widget.ShimmerTextView;
import cn.garymb.ygomobile.utils.YGOUtil;
public class HomeFragment extends BaseFragemnt { public class HomeFragment extends BaseFragemnt {
...@@ -78,14 +72,17 @@ public class HomeFragment extends BaseFragemnt { ...@@ -78,14 +72,17 @@ public class HomeFragment extends BaseFragemnt {
layoutView = inflater.inflate(R.layout.main_fragment, container, false); layoutView = inflater.inflate(R.layout.main_fragment, container, false);
initView(layoutView, savedInstanceState); initView(layoutView, savedInstanceState);
//event
EventBus.getDefault().register(this);//eventBus必须传this而不能是context
return layoutView; return layoutView;
} }
private void initView(View view, Bundle saveBundle) { private void initView(View view, Bundle saveBundle) {
//服务器列表 //服务器列表
mServerList = view.findViewById(R.id.list_server); mServerList = view.findViewById(R.id.list_server);
mServerListAdapter = new ServerListAdapter(getActivity()); mServerListAdapter = new ServerListAdapter(getContext());
LayoutInflater infla = LayoutInflater.from(getActivity()); LayoutInflater infla = LayoutInflater.from(getContext());
//添加服务器
View footView = infla.inflate(R.layout.item_ic_add, null); View footView = infla.inflate(R.layout.item_ic_add, null);
TextView add_server = footView.findViewById(R.id.add_server); TextView add_server = footView.findViewById(R.id.add_server);
add_server.setOnClickListener(new View.OnClickListener() { add_server.setOnClickListener(new View.OnClickListener() {
...@@ -95,13 +92,13 @@ public class HomeFragment extends BaseFragemnt { ...@@ -95,13 +92,13 @@ public class HomeFragment extends BaseFragemnt {
} }
}); });
mServerListAdapter.addFooterView(footView); mServerListAdapter.addFooterView(footView);
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity()); LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext());
mServerList.setLayoutManager(linearLayoutManager); mServerList.setLayoutManager(linearLayoutManager);
DividerItemDecoration dividerItemDecoration = DividerItemDecoration dividerItemDecoration =
new DividerItemDecoration(getActivity(), DividerItemDecoration.VERTICAL); new DividerItemDecoration(getContext(), DividerItemDecoration.VERTICAL);
mServerList.addItemDecoration(dividerItemDecoration); mServerList.addItemDecoration(dividerItemDecoration);
mServerList.setAdapter(mServerListAdapter); mServerList.setAdapter(mServerListAdapter);
mServerListManager = new ServerListManager(getActivity(), mServerListAdapter); mServerListManager = new ServerListManager(getContext(), mServerListAdapter);
mServerListManager.bind(mServerList); mServerListManager.bind(mServerList);
mServerListManager.syncLoadData(); mServerListManager.syncLoadData();
//萌卡 //萌卡
...@@ -232,7 +229,7 @@ public class HomeFragment extends BaseFragemnt { ...@@ -232,7 +229,7 @@ public class HomeFragment extends BaseFragemnt {
else else
message = getString(R.string.quick_join) + ":\"" + password + "\""; message = getString(R.string.quick_join) + ":\"" + password + "\"";
DialogPlus dialog = new DialogPlus(getActivity()); DialogPlus dialog = new DialogPlus(getContext());
dialog.setTitle(R.string.question); dialog.setTitle(R.string.question);
dialog.setMessage(message); dialog.setMessage(message);
dialog.setMessageGravity(Gravity.CENTER_HORIZONTAL); dialog.setMessageGravity(Gravity.CENTER_HORIZONTAL);
...@@ -241,12 +238,12 @@ public class HomeFragment extends BaseFragemnt { ...@@ -241,12 +238,12 @@ public class HomeFragment extends BaseFragemnt {
dialog.show(); dialog.show();
dialog.setRightButtonListener((dlg, s) -> { dialog.setRightButtonListener((dlg, s) -> {
dialog.dismiss(); dialog.dismiss();
ServerListAdapter mServerListAdapter = new ServerListAdapter(getActivity()); ServerListAdapter mServerListAdapter = new ServerListAdapter(getContext());
ServerListManager mServerListManager = new ServerListManager(getActivity(), mServerListAdapter); ServerListManager mServerListManager = new ServerListManager(getContext(), mServerListAdapter);
mServerListManager.syncLoadData(); mServerListManager.syncLoadData();
File xmlFile = new File(App.get().getFilesDir(), Constants.SERVER_FILE); File xmlFile = new File(App.get().getFilesDir(), Constants.SERVER_FILE);
VUiKit.defer().when(() -> { VUiKit.defer().when(() -> {
ServerList assetList = ServerListManager.readList(getActivity().getAssets().open(ASSET_SERVER_LIST)); ServerList assetList = ServerListManager.readList(getContext().getAssets().open(ASSET_SERVER_LIST));
ServerList fileList = xmlFile.exists() ? ServerListManager.readList(new FileInputStream(xmlFile)) : null; ServerList fileList = xmlFile.exists() ? ServerListManager.readList(new FileInputStream(xmlFile)) : null;
if (fileList == null) { if (fileList == null) {
return assetList; return assetList;
...@@ -355,6 +352,12 @@ public class HomeFragment extends BaseFragemnt { ...@@ -355,6 +352,12 @@ public class HomeFragment extends BaseFragemnt {
mServerListManager.syncLoadData(); mServerListManager.syncLoadData();
} }
@Override
public void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);
}
@Override @Override
public void onFirstUserVisible() { public void onFirstUserVisible() {
......
...@@ -36,11 +36,6 @@ ...@@ -36,11 +36,6 @@
android:orientation="horizontal" android:orientation="horizontal"
android:weightSum="1"> android:weightSum="1">
<LinearLayout
android:layout_width="135dp"
android:layout_height="match_parent"
android:layout_alignParentEnd="true"
android:orientation="horizontal">
<LinearLayout <LinearLayout
android:id="@+id/mycard" android:id="@+id/mycard"
...@@ -49,10 +44,6 @@ ...@@ -49,10 +44,6 @@
android:gravity="bottom" android:gravity="bottom"
android:orientation="vertical"> android:orientation="vertical">
<TextView
android:layout_width="60dp"
android:layout_height="17dp" />
<ImageView <ImageView
android:id="@+id/btn_mycard" android:id="@+id/btn_mycard"
android:layout_width="50dp" android:layout_width="50dp"
...@@ -68,6 +59,5 @@ ...@@ -68,6 +59,5 @@
android:gravity="center" android:gravity="center"
android:text="@string/mycard" /> android:text="@string/mycard" />
</LinearLayout> </LinearLayout>
</LinearLayout>
</RelativeLayout> </RelativeLayout>
</FrameLayout> </FrameLayout>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment