|
@@ -18,16 +18,22 @@ import android.widget.EditText;
|
|
|
import android.widget.TextView;
|
|
|
import android.widget.Toast;
|
|
|
|
|
|
+import androidx.fragment.app.FragmentManager;
|
|
|
+import androidx.fragment.app.FragmentPagerAdapter;
|
|
|
import androidx.viewpager.widget.ViewPager;
|
|
|
|
|
|
+import com.google.android.material.tabs.TabLayout;
|
|
|
import com.jixin.im.AppConstant;
|
|
|
import com.jixin.im.R;
|
|
|
import com.jixin.im.bean.message.ChatMessage;
|
|
|
import com.jixin.im.bean.message.XmppMessage;
|
|
|
import com.jixin.im.bean.redpacket.RedPacket;
|
|
|
+import com.jixin.im.db.InternationalizationHelper;
|
|
|
+import com.jixin.im.fragment.MucSendPacketFragment;
|
|
|
import com.jixin.im.helper.DialogHelper;
|
|
|
import com.jixin.im.helper.PaySecureHelper;
|
|
|
import com.jixin.im.ui.base.BaseActivity;
|
|
|
+import com.jixin.im.ui.base.EasyFragment;
|
|
|
import com.jixin.im.ui.message.ChatActivity;
|
|
|
import com.jixin.im.ui.message.MucChatActivity;
|
|
|
import com.jixin.im.ui.smarttab.SmartTabLayout;
|
|
@@ -52,42 +58,24 @@ import okhttp3.Call;
|
|
|
/**
|
|
|
* Created by 魏正旺 on 2016/9/8.
|
|
|
*/
|
|
|
-public class MucSendRedPacketActivity extends BaseActivity implements View.OnClickListener {
|
|
|
- LayoutInflater inflater;
|
|
|
- private SmartTabLayout smartTabLayout;
|
|
|
+
|
|
|
+public class MucSendRedPacketActivity extends BaseActivity {
|
|
|
+
|
|
|
+ private TabLayout mTabRedPacket;
|
|
|
private ViewPager viewPager;
|
|
|
- private List<View> views;
|
|
|
- private List<String> mTitleList;
|
|
|
- private EditText edit_count_pt;
|
|
|
- private EditText edit_money_pt;
|
|
|
- private EditText edit_words_pt;
|
|
|
-
|
|
|
- private EditText edit_count_psq;
|
|
|
- private EditText edit_money_psq;
|
|
|
- private EditText edit_words_psq;
|
|
|
-
|
|
|
- private EditText edit_count_kl;
|
|
|
- private EditText edit_money_kl;
|
|
|
- private EditText edit_words_kl;
|
|
|
-
|
|
|
- private TextView hbgs, ge, zje, yuan, xhb;
|
|
|
- private Button pt;
|
|
|
- private Button bkl;
|
|
|
- private Button sq;
|
|
|
- // private Button sq, pt, bkl;
|
|
|
-
|
|
|
- private String toUserId;
|
|
|
- private int mCurrentItem;
|
|
|
- private int memberNum;
|
|
|
+ private String roomId;
|
|
|
+
|
|
|
+
|
|
|
+ private List<EasyFragment> mFragmentList;
|
|
|
+ private TabFragmentPagerAdapter mPagerAdapter;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
public void onCreate(Bundle savedInstanceState) {
|
|
|
super.onCreate(savedInstanceState);
|
|
|
+
|
|
|
setContentView(R.layout.activity_muc_redpacket);
|
|
|
- toUserId = getIntent().getStringExtra(AppConstant.EXTRA_USER_ID);
|
|
|
- memberNum = getIntent().getIntExtra(AppConstant.EXTRA_MEMBER_NUM, 0);
|
|
|
- inflater = LayoutInflater.from(this);
|
|
|
- initActionBar();
|
|
|
+ roomId = getIntent().getStringExtra("roomId");
|
|
|
initView();
|
|
|
|
|
|
checkHasPayPassword();
|
|
@@ -103,386 +91,88 @@ public class MucSendRedPacketActivity extends BaseActivity implements View.OnCli
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void initActionBar() {
|
|
|
+ private void initView() {
|
|
|
getSupportActionBar().hide();
|
|
|
- getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
|
|
|
- findViewById(R.id.tv_title_left).setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- finish();
|
|
|
- }
|
|
|
- });
|
|
|
+ findViewById(R.id.mergerStatus).setBackgroundColor(getResources().getColor(R.color.redpacket_bg_new));
|
|
|
+ findViewById(R.id.iv_title_left).setOnClickListener(view -> finish());
|
|
|
TextView tvTitle = (TextView) findViewById(R.id.tv_title_center);
|
|
|
- tvTitle.setText(getString(R.string.send_red_packet));
|
|
|
+ tvTitle.setText(InternationalizationHelper.getString("JX_SendGift"));
|
|
|
+ tvTitle.setTextColor(getResources().getColor(R.color.white));
|
|
|
+ mFragmentList = new ArrayList<>();
|
|
|
+ mTabRedPacket = findViewById(R.id.tab_red_packet);
|
|
|
+ viewPager = findViewById(R.id.muc_viewpager);
|
|
|
+ initTabLayout();
|
|
|
+
|
|
|
}
|
|
|
|
|
|
- private void initView() {
|
|
|
- smartTabLayout = (SmartTabLayout) findViewById(R.id.muc_smarttablayout_redpacket);
|
|
|
- viewPager = (ViewPager) findViewById(R.id.muc_viewpagert_redpacket);
|
|
|
- views = new ArrayList<View>();
|
|
|
- mTitleList = new ArrayList<String>();
|
|
|
- mTitleList.add(getString(R.string.red_envelope));
|
|
|
- mTitleList.add(getString(R.string.Usual_Gift));
|
|
|
-// mTitleList.add(getString(R.string.mes_gift));
|
|
|
-
|
|
|
- views.add(inflater.inflate(R.layout.muc_redpacket_pager_sq, null));
|
|
|
- views.add(inflater.inflate(R.layout.muc_redpacket_pager_pt, null));
|
|
|
-// views.add(inflater.inflate(R.layout.muc_redpacket_pager_kl, null));
|
|
|
-
|
|
|
- View temp_view = views.get(0);
|
|
|
- edit_count_pt = (EditText) temp_view.findViewById(R.id.edit_redcount);
|
|
|
- edit_count_pt.addTextChangedListener(new RemoveZeroTextWatcher(edit_count_pt));
|
|
|
- edit_money_pt = (EditText) temp_view.findViewById(R.id.edit_money);
|
|
|
- edit_words_pt = (EditText) temp_view.findViewById(R.id.edit_blessing);
|
|
|
- TextView tv_scan1 = temp_view.findViewById(R.id.tv_amount_of_money);
|
|
|
- hbgs = (TextView) temp_view.findViewById(R.id.hbgs);
|
|
|
- ge = (TextView) temp_view.findViewById(R.id.ge);
|
|
|
- zje = (TextView) temp_view.findViewById(R.id.zje);
|
|
|
- yuan = (TextView) temp_view.findViewById(R.id.yuan);
|
|
|
- xhb = (TextView) temp_view.findViewById(R.id.textviewtishi);
|
|
|
- sq = (Button) temp_view.findViewById(R.id.btn_sendRed);
|
|
|
- hbgs.setText(getString(R.string.number_of_envelopes));
|
|
|
- ge.setText(getString(R.string.individual));
|
|
|
- zje.setText(getString(R.string.total_amount));
|
|
|
- edit_money_pt.setHint(getString(R.string.input_amount));
|
|
|
- yuan.setText(getString(R.string.yuan));
|
|
|
- xhb.setText(getString(R.string.rondom_amount));
|
|
|
- edit_words_pt.setHint(getString(R.string.auspicious));
|
|
|
- sq.setAlpha(0.6f);
|
|
|
- sq.setOnClickListener(this);
|
|
|
-
|
|
|
- temp_view = views.get(1);
|
|
|
- edit_count_psq = (EditText) temp_view.findViewById(R.id.edit_redcount);
|
|
|
- TextView tv_scan2 = temp_view.findViewById(R.id.tv_amount_of_money);
|
|
|
-
|
|
|
- edit_count_psq.addTextChangedListener(new RemoveZeroTextWatcher(edit_count_psq));
|
|
|
- edit_money_psq = (EditText) temp_view.findViewById(R.id.edit_money);
|
|
|
- edit_words_psq = (EditText) temp_view.findViewById(R.id.edit_blessing);
|
|
|
- hbgs = (TextView) temp_view.findViewById(R.id.hbgs);
|
|
|
- ge = (TextView) temp_view.findViewById(R.id.ge);
|
|
|
- zje = (TextView) temp_view.findViewById(R.id.zje);
|
|
|
- yuan = (TextView) temp_view.findViewById(R.id.yuan);
|
|
|
- xhb = (TextView) temp_view.findViewById(R.id.textviewtishi);
|
|
|
- pt = (Button) temp_view.findViewById(R.id.btn_sendRed);
|
|
|
- hbgs.setText(getString(R.string.number_of_envelopes));
|
|
|
- ge.setText(getString(R.string.individual));
|
|
|
- zje.setText(getString(R.string.total_amount));
|
|
|
- edit_money_psq.setHint(getString(R.string.input_amount));
|
|
|
- yuan.setText(getString(R.string.yuan));
|
|
|
- xhb.setText(getString(R.string.same_amount));
|
|
|
- edit_words_psq.setHint(getString(R.string.auspicious));
|
|
|
- pt.setAlpha(0.6f);
|
|
|
- pt.setOnClickListener(this);
|
|
|
-
|
|
|
-// temp_view = views.get(2);
|
|
|
-// edit_count_kl = (EditText) temp_view.findViewById(R.id.edit_redcount);
|
|
|
-// TextView tv_scan3 = temp_view.findViewById(R.id.tv_amount_of_money);
|
|
|
-// edit_count_kl.addTextChangedListener(new RemoveZeroTextWatcher(edit_count_kl));
|
|
|
-// edit_money_kl = (EditText) temp_view.findViewById(R.id.edit_money);
|
|
|
-// edit_words_kl = (EditText) temp_view.findViewById(R.id.edit_password);
|
|
|
-// edit_words_kl.addTextChangedListener(new TextWatcher() {
|
|
|
-// @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) {
|
|
|
-// String t = s.toString().trim();
|
|
|
-// if (s.length() != t.length()) {
|
|
|
-// s.replace(0, s.length(), t);
|
|
|
-// }
|
|
|
-// }
|
|
|
-// });
|
|
|
-// EditText edit_compatible = (EditText) temp_view.findViewById(R.id.edit_compatible);
|
|
|
-// edit_compatible.requestFocus();
|
|
|
-//
|
|
|
-// hbgs = (TextView) temp_view.findViewById(R.id.hbgs);
|
|
|
-// ge = (TextView) temp_view.findViewById(R.id.ge);
|
|
|
-// zje = (TextView) temp_view.findViewById(R.id.zje);
|
|
|
-// yuan = (TextView) temp_view.findViewById(R.id.yuan);
|
|
|
-// xhb = (TextView) temp_view.findViewById(R.id.textviewtishi);
|
|
|
-// bkl = (Button) temp_view.findViewById(R.id.btn_sendRed);
|
|
|
-// TextView kl = (TextView) temp_view.findViewById(R.id.kl);
|
|
|
-// kl.setText(getString(R.string.message_red));
|
|
|
-// hbgs.setText(getString(R.string.number_of_envelopes));
|
|
|
-// ge.setText(getString(R.string.individual));
|
|
|
-// zje.setText(getString(R.string.total_amount));
|
|
|
-// edit_money_kl.setHint(R.string.need_input_money);
|
|
|
-// yuan.setText(getString(R.string.yuan));
|
|
|
-// xhb.setText(getString(R.string.reply_grab));
|
|
|
-// edit_words_kl.setHint(getString(R.string.big_envelope));
|
|
|
-// bkl.setAlpha(0.6f);
|
|
|
-// bkl.setOnClickListener(this);
|
|
|
- InputChangeListener inputChangeListenerPt = new InputChangeListener(edit_money_pt, tv_scan1, sq);
|
|
|
- InputChangeListener inputChangeListenerPsq = new InputChangeListener(edit_money_psq, tv_scan2, pt);
|
|
|
-// InputChangeListener inputChangeListenerKl = new InputChangeListener(edit_money_kl, tv_scan3, bkl);
|
|
|
-
|
|
|
- // 添加输入监听
|
|
|
- edit_money_pt.addTextChangedListener(inputChangeListenerPt);
|
|
|
- edit_money_psq.addTextChangedListener(inputChangeListenerPsq);
|
|
|
-// edit_money_kl.addTextChangedListener(inputChangeListenerKl);
|
|
|
- // 只允许输入小数点和数字
|
|
|
- edit_money_pt.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
|
|
|
- edit_money_psq.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
|
|
|
-// edit_money_kl.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
|
|
|
-
|
|
|
- viewPager.setAdapter(new PagerAdapter());
|
|
|
- smartTabLayout.setViewPager(viewPager);
|
|
|
-
|
|
|
- /**
|
|
|
- * 为了实现点击Tab栏切换的时候不出现动画
|
|
|
- * 为每个Tab重新设置点击事件
|
|
|
- */
|
|
|
- for (int i = 0; i < mTitleList.size(); i++) {
|
|
|
- View view = smartTabLayout.getTabAt(i);
|
|
|
- view.setTag(i + "");
|
|
|
- view.setOnClickListener(this);
|
|
|
- }
|
|
|
+ private void initFragment(){
|
|
|
+ MucSendPacketFragment luckFragment = new MucSendPacketFragment();
|
|
|
+ luckFragment.setRedPacketType(2);
|
|
|
+ luckFragment.setRoomId(roomId);
|
|
|
+ mFragmentList.add(luckFragment);
|
|
|
+ MucSendPacketFragment normalFragment = new MucSendPacketFragment();
|
|
|
+ normalFragment.setRedPacketType(1);
|
|
|
+ normalFragment.setRoomId(roomId);
|
|
|
+ mFragmentList.add(normalFragment);
|
|
|
+ mPagerAdapter = new TabFragmentPagerAdapter(getSupportFragmentManager(),mFragmentList);
|
|
|
+ viewPager.setAdapter(mPagerAdapter);
|
|
|
+ viewPager.setOffscreenPageLimit(mFragmentList.size());
|
|
|
+
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- if (v.getId() == R.id.btn_sendRed) {
|
|
|
- final int item = viewPager.getCurrentItem();
|
|
|
- final Bundle bundle = new Bundle();
|
|
|
- final Intent intent = new Intent(this, MucChatActivity.class);
|
|
|
- String money = null, words = null, count = null;
|
|
|
- int resultCode = 0;
|
|
|
- switch (item) {
|
|
|
- case 0: {
|
|
|
- //手气红包
|
|
|
- money = edit_money_pt.getText().toString();
|
|
|
- words = TextUtils.isEmpty(edit_words_pt.getText().toString()) ?
|
|
|
- edit_words_pt.getHint().toString() : edit_words_pt.getText().toString();
|
|
|
- count = edit_count_pt.getText().toString();
|
|
|
- // 拼手气与普通红包位置对调 修改resultCode
|
|
|
- resultCode = ChatActivity.REQUEST_CODE_SEND_RED_PSQ;
|
|
|
- }
|
|
|
- break;
|
|
|
-
|
|
|
- case 1: {
|
|
|
- //普通红包
|
|
|
- money = edit_money_psq.getText().toString();
|
|
|
- words = TextUtils.isEmpty(edit_words_psq.getText().toString()) ?
|
|
|
- edit_words_psq.getHint().toString() : edit_words_psq.getText().toString();
|
|
|
- count = edit_count_psq.getText().toString();
|
|
|
- resultCode = ChatActivity.REQUEST_CODE_SEND_RED_PT;
|
|
|
- }
|
|
|
- break;
|
|
|
-
|
|
|
- case 2: {
|
|
|
- money = edit_money_kl.getText().toString();
|
|
|
- words = TextUtils.isEmpty(edit_words_kl.getText().toString()) ?
|
|
|
- edit_words_kl.getHint().toString() : edit_words_kl.getText().toString();
|
|
|
- count = edit_count_kl.getText().toString();
|
|
|
- resultCode = ChatActivity.REQUEST_CODE_SEND_RED_KL;
|
|
|
- }
|
|
|
- break;
|
|
|
- }
|
|
|
+ private void initTabLayout(){
|
|
|
+ initFragment();
|
|
|
|
|
|
- if (!TextUtils.isEmpty(count) && Integer.parseInt(count) == 0) {
|
|
|
- Toast.makeText(this, R.string.tip_red_packet_too_slow, Toast.LENGTH_SHORT).show();
|
|
|
- return;
|
|
|
- }
|
|
|
+ mTabRedPacket.setupWithViewPager(viewPager);
|
|
|
+ mTabRedPacket.removeAllTabs();
|
|
|
|
|
|
- if (!TextUtils.isEmpty(count) && Integer.parseInt(count) > memberNum) {
|
|
|
- Toast.makeText(this, R.string.tip_red_packet_than_member, Toast.LENGTH_SHORT).show();
|
|
|
- return;
|
|
|
- }
|
|
|
+ mTabRedPacket.addTab( mTabRedPacket.newTab().setText(InternationalizationHelper.getString("JX_LuckGift")));//手气红包
|
|
|
+ mTabRedPacket.addTab( mTabRedPacket.newTab().setText(InternationalizationHelper.getString("JX_UsualGift")));//普通红包
|
|
|
+ mTabRedPacket.setTabIndicatorFullWidth(false);
|
|
|
+ mTabRedPacket.setInlineLabel(true);
|
|
|
+ mTabRedPacket.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
|
|
|
+ @Override
|
|
|
+ public void onTabSelected(TabLayout.Tab tab) {
|
|
|
|
|
|
- if (!TextUtils.isEmpty(money) &&
|
|
|
- !TextUtils.isEmpty(count) &&
|
|
|
- Double.parseDouble(money) / Integer.parseInt(count) < 0.01) {
|
|
|
- Toast.makeText(this, R.string.tip_money_too_less, Toast.LENGTH_SHORT).show();
|
|
|
- return;
|
|
|
}
|
|
|
|
|
|
- if (!TextUtils.isEmpty(money) &&
|
|
|
- !TextUtils.isEmpty(count) &&
|
|
|
- item == 1 && Double.parseDouble(money) * 100 % Integer.parseInt(count) != 0) {
|
|
|
- Toast.makeText(this, R.string.normal_red_money_need_peace, Toast.LENGTH_SHORT).show();
|
|
|
- return;
|
|
|
- }
|
|
|
+ @Override
|
|
|
+ public void onTabUnselected(TabLayout.Tab tab) {
|
|
|
|
|
|
- if (eqData(money, count, words)) {
|
|
|
- money = Money.fromYuan(money);
|
|
|
- final String finalMoney = money;
|
|
|
- final String finalWords = words;
|
|
|
- final String finalCount = count;
|
|
|
- PaySecureHelper.inputPayPassword(this, getString(R.string.chat_redpacket), money, password -> {
|
|
|
- String type;
|
|
|
- if (item == 0) {
|
|
|
- type = String.valueOf(2);
|
|
|
- } else if (item == 1) {
|
|
|
- type = String.valueOf(1);
|
|
|
- } else {
|
|
|
- type = String.valueOf((item + 1));
|
|
|
- }
|
|
|
- sendRed(type, finalMoney, finalCount, finalWords, password);
|
|
|
- });
|
|
|
- }
|
|
|
- } else {
|
|
|
- int index = Integer.parseInt(v.getTag().toString());
|
|
|
- if (mCurrentItem != index) {
|
|
|
- mCurrentItem = index;
|
|
|
- hideKeyboard();
|
|
|
}
|
|
|
- viewPager.setCurrentItem(index, false);
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
- private void hideKeyboard() {
|
|
|
- InputMethodManager imm = (InputMethodManager) this.getSystemService(Context.INPUT_METHOD_SERVICE);
|
|
|
- if (imm != null && imm.isActive() && this.getCurrentFocus() != null) {
|
|
|
- if (this.getCurrentFocus().getWindowToken() != null) {
|
|
|
- imm.hideSoftInputFromWindow(this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
|
|
|
+ @Override
|
|
|
+ public void onTabReselected(TabLayout.Tab tab) {
|
|
|
+
|
|
|
}
|
|
|
- }
|
|
|
- }
|
|
|
+ });
|
|
|
|
|
|
- private boolean eqData(String money, String count, String words) {
|
|
|
- if (TextUtils.isEmpty(money)) {
|
|
|
- ToastUtil.showToast(mContext, getString(R.string.need_input_money));
|
|
|
- return false;
|
|
|
- } else if (Double.parseDouble(money) > 500 || Double.parseDouble(money) <= 0) {
|
|
|
- ToastUtil.showToast(mContext, getString(R.string.red_packet_range));
|
|
|
- return false;
|
|
|
- } else if (TextUtils.isEmpty(count)) {
|
|
|
- ToastUtil.showToast(mContext, getString(R.string.need_red_packet_count));
|
|
|
- return false;
|
|
|
- } else if (TextUtils.isEmpty(words)) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- return true;
|
|
|
}
|
|
|
|
|
|
- public void sendRed(String type, String pMoney, String count, String words, String payPassword) {
|
|
|
- if (!coreManager.isLogin()) {
|
|
|
- return;
|
|
|
- }
|
|
|
- DialogHelper.showDefaulteMessageProgressDialog(mContext);
|
|
|
-
|
|
|
- String money = Money.fromYuan(pMoney);
|
|
|
- Map<String, String> params = new HashMap<>();
|
|
|
- params.put("type", type);
|
|
|
- params.put("moneyStr", money);
|
|
|
- params.put("count", count);
|
|
|
- params.put("greetings", words);
|
|
|
- params.put("roomJid", toUserId);
|
|
|
-
|
|
|
- PaySecureHelper.generateParam(
|
|
|
- this, payPassword, params,
|
|
|
- "" + type + money + count + words + toUserId,
|
|
|
- t -> {
|
|
|
- DialogHelper.dismissProgressDialog();
|
|
|
- ToastUtil.showToast(this, this.getString(R.string.tip_pay_secure_place_holder, t.getMessage()));
|
|
|
- }, (p, code) -> {
|
|
|
- HttpUtils.get().url(coreManager.getConfig().REDPACKET_SEND)
|
|
|
- .params(p)
|
|
|
- .build()
|
|
|
- .execute(new BaseCallback<RedPacket>(RedPacket.class) {
|
|
|
- @Override
|
|
|
- public void onResponse(ObjectResult<RedPacket> result) {
|
|
|
- DialogHelper.dismissProgressDialog();
|
|
|
- if (Result.checkSuccess(mContext, result)) {
|
|
|
- RedPacket redPacket = result.getData();
|
|
|
- String objectId = redPacket.getId();
|
|
|
- ChatMessage message = new ChatMessage();
|
|
|
- message.setType(XmppMessage.TYPE_RED);
|
|
|
- message.setFromUserId(coreManager.getSelf().getUserId());
|
|
|
- message.setFromUserName(coreManager.getSelf().getNickName());
|
|
|
- message.setTimeSend(TimeUtils.sk_time_current_time());
|
|
|
- message.setContent(redPacket.getGreetings()); // 祝福语
|
|
|
- message.setFilePath(redPacket.getType() + "");// 用FilePath来储存红包类型
|
|
|
- // 群组发送普通红包
|
|
|
- message.setFileSize(redPacket.getStatus()); // 用filesize来储存红包状态
|
|
|
- message.setObjectId(objectId); // 红包id
|
|
|
- Intent intent = new Intent();
|
|
|
- intent.putExtra(AppConstant.EXTRA_CHAT_MESSAGE, message.toJsonString());
|
|
|
- setResult(viewPager.getCurrentItem() == 0 ? ChatActivity.REQUEST_CODE_SEND_RED_PSQ : ChatActivity.REQUEST_CODE_SEND_RED_KL, intent);
|
|
|
- finish();
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void onError(Call call, Exception e) {
|
|
|
- DialogHelper.dismissProgressDialog();
|
|
|
- }
|
|
|
- });
|
|
|
- });
|
|
|
- }
|
|
|
|
|
|
- private static class RemoveZeroTextWatcher implements TextWatcher {
|
|
|
- private EditText editText;
|
|
|
|
|
|
- RemoveZeroTextWatcher(EditText editText) {
|
|
|
- this.editText = editText;
|
|
|
- }
|
|
|
+ private class TabFragmentPagerAdapter extends FragmentPagerAdapter {
|
|
|
|
|
|
- @Override
|
|
|
- public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
|
|
|
+ private List<EasyFragment> mFragmentList;
|
|
|
+ public TabFragmentPagerAdapter(FragmentManager fm, List<EasyFragment> list) {
|
|
|
+ super(fm);
|
|
|
+ this.mFragmentList = list;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
|
|
|
+ public void setPrimaryItem(ViewGroup container, int position, Object object) {
|
|
|
+ super.setPrimaryItem(container, position, object);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void afterTextChanged(Editable editable) {
|
|
|
- // 删除开头的0,
|
|
|
- int end = 0;
|
|
|
- for (int i = 0; i < editable.length(); i++) {
|
|
|
- char ch = editable.charAt(i);
|
|
|
- if (ch == '0') {
|
|
|
- end = i + 1;
|
|
|
- } else {
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- if (end > 0) {
|
|
|
- editable.delete(0, end);
|
|
|
- editText.setText(editable);
|
|
|
- }
|
|
|
+ public EasyFragment getItem(int position) {
|
|
|
+ return mFragmentList.get(position);//显示第几个页面
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
- private class PagerAdapter extends androidx.viewpager.widget.PagerAdapter {
|
|
|
|
|
|
@Override
|
|
|
public int getCount() {
|
|
|
- return views.size();
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public boolean isViewFromObject(View view, Object object) {
|
|
|
- return view == object;
|
|
|
+ return mFragmentList.size();//有几个页面
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public void destroyItem(View container, int position, Object object) {
|
|
|
- ((ViewPager) container).removeView(views.get(position));
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public Object instantiateItem(View container, int position) {
|
|
|
- ((ViewGroup) container).addView(views.get(position));
|
|
|
- return views.get(position);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public Parcelable saveState() {
|
|
|
- return null;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public CharSequence getPageTitle(int position) {
|
|
|
- return mTitleList.get(position);
|
|
|
- }
|
|
|
}
|
|
|
-}
|
|
|
+}
|