From bab61794ab93ce21ab35ec8b4f1dde3db721912c Mon Sep 17 00:00:00 2001 From: Kazuki Yamaguchi Date: Fri, 18 Sep 2015 15:48:30 +0900 Subject: Revert "データバインディングを使い始めた" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 897cdb295354cf8d8806270302cd7697cd76c54e. --- .../smileessence/activity/EditCommandActivity.java | 2 +- .../net/lacolaco/smileessence/entity/Account.java | 4 +- .../view/adapter/CustomListAdapter.java | 2 +- .../smileessence/viewmodel/CheckBoxModel.java | 64 ++++++---------------- .../smileessence/viewmodel/MessageViewModel.java | 22 +++++--- 5 files changed, 36 insertions(+), 58 deletions(-) (limited to 'app/src/main/java/net') diff --git a/app/src/main/java/net/lacolaco/smileessence/activity/EditCommandActivity.java b/app/src/main/java/net/lacolaco/smileessence/activity/EditCommandActivity.java index ad19ae61..13c21d0f 100644 --- a/app/src/main/java/net/lacolaco/smileessence/activity/EditCommandActivity.java +++ b/app/src/main/java/net/lacolaco/smileessence/activity/EditCommandActivity.java @@ -106,7 +106,7 @@ public class EditCommandActivity extends Activity { @Override protected void onDestroy() { for (int i = 0; i < adapter.getCount(); i++) { - CheckBoxModel checkBoxModel = adapter.getItem(i); + CheckBoxModel checkBoxModel = (CheckBoxModel) adapter.getItem(i); Command command = editedCommands.get(i); CommandSetting.setVisible(command.getKey(), checkBoxModel.isChecked()); } diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/Account.java b/app/src/main/java/net/lacolaco/smileessence/entity/Account.java index 99a78a5a..d5cc6b1b 100644 --- a/app/src/main/java/net/lacolaco/smileessence/entity/Account.java +++ b/app/src/main/java/net/lacolaco/smileessence/entity/Account.java @@ -140,7 +140,7 @@ public class Account extends Model { } } - public void fetchTweet(long statusId, boolean forceRetrieve, Consumer callback) { + public void fetchTweet(long statusId, Consumer callback, boolean forceRetrieve) { Tweet tweet = Tweet.fetch(statusId); if (forceRetrieve || tweet == null) { new ShowStatusTask(getTwitter(), statusId) { @@ -154,7 +154,7 @@ public class Account extends Model { } } public void fetchTweet(long statusId, Consumer callback) { - fetchTweet(statusId, false, callback); + fetchTweet(statusId, callback, false); } public TwitterTask tryGetStatus(long statusID, final StatusCallback callback) { diff --git a/app/src/main/java/net/lacolaco/smileessence/view/adapter/CustomListAdapter.java b/app/src/main/java/net/lacolaco/smileessence/view/adapter/CustomListAdapter.java index bfdacce8..16691238 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/adapter/CustomListAdapter.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/adapter/CustomListAdapter.java @@ -82,7 +82,7 @@ public class CustomListAdapter extends BaseAdapter { // --------------------- Interface Adapter --------------------- @Override - public T getItem(int position) { + public Object getItem(int position) { return frozenList.get(position); } diff --git a/app/src/main/java/net/lacolaco/smileessence/viewmodel/CheckBoxModel.java b/app/src/main/java/net/lacolaco/smileessence/viewmodel/CheckBoxModel.java index 015f206f..08b3ad7e 100644 --- a/app/src/main/java/net/lacolaco/smileessence/viewmodel/CheckBoxModel.java +++ b/app/src/main/java/net/lacolaco/smileessence/viewmodel/CheckBoxModel.java @@ -25,37 +25,35 @@ package net.lacolaco.smileessence.viewmodel; import android.app.Activity; -import android.databinding.*; import android.view.LayoutInflater; -import android.view.MenuItem; import android.view.View; import android.widget.CheckBox; import android.widget.CompoundButton; -import net.lacolaco.smileessence.BR; import net.lacolaco.smileessence.R; -import net.lacolaco.smileessence.databinding.MenuItemCheckboxBinding; public class CheckBoxModel implements IViewModel { // ------------------------------ FIELDS ------------------------------ - private final CheckedState state; + private final String text; + private boolean checked; // --------------------------- CONSTRUCTORS --------------------------- - public CheckBoxModel(String _text, boolean _checked) { - state = new CheckedState(_text, _checked); + public CheckBoxModel(String text, boolean isChecked) { + this.text = text; + checked = isChecked; } // --------------------- GETTER / SETTER METHODS --------------------- public boolean isChecked() { - return state.isChecked(); + return checked; } - public void setChecked(boolean _checked) { - state.setChecked(_checked); + public void setChecked(boolean checked) { + this.checked = checked; } // ------------------------ INTERFACE METHODS ------------------------ @@ -66,43 +64,17 @@ public class CheckBoxModel implements IViewModel { @Override public View getView(Activity activity, LayoutInflater inflater, View convertedView) { if (convertedView == null) { - MenuItemCheckboxBinding binding = MenuItemCheckboxBinding.inflate(inflater, null, false); - convertedView = binding.getRoot(); - convertedView.setTag(binding); + convertedView = inflater.inflate(R.layout.menu_item_checkbox, null); } - - MenuItemCheckboxBinding binding = (MenuItemCheckboxBinding) convertedView.getTag(); - binding.setCheckedState(state); + CheckBox checkBox = (CheckBox) convertedView.findViewById(R.id.checkBox_menuItem); + checkBox.setText(this.text); + checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + CheckBoxModel.this.checked = isChecked; + } + }); + checkBox.setChecked(checked); return convertedView; } - - public static class CheckedState extends BaseObservable { - private String text; - private boolean checked; - - CheckedState(String _text, boolean _checked) { - text = _text; - checked = _checked; - } - - @Bindable - public String getText() { - return text; - } - - public void setText(String text) { - this.text = text; - notifyPropertyChanged(BR.text); - } - - @Bindable - public boolean isChecked() { - return checked; - } - - public void setChecked(boolean checked) { - this.checked = checked; - notifyPropertyChanged(BR.checked); - } - } } diff --git a/app/src/main/java/net/lacolaco/smileessence/viewmodel/MessageViewModel.java b/app/src/main/java/net/lacolaco/smileessence/viewmodel/MessageViewModel.java index 5f1f2e8c..b6c640b5 100644 --- a/app/src/main/java/net/lacolaco/smileessence/viewmodel/MessageViewModel.java +++ b/app/src/main/java/net/lacolaco/smileessence/viewmodel/MessageViewModel.java @@ -96,10 +96,13 @@ public class MessageViewModel implements IViewModel { int theme = ((MainActivity) activity).getThemeIndex(); NetworkImageView icon = (NetworkImageView) convertedView.findViewById(R.id.imageview_status_icon); ImageCache.getInstance().setImageToView(directMessage.getSender().getProfileImageUrl(), icon); - icon.setOnClickListener(v -> { - UserDetailDialogFragment dialogFragment = new UserDetailDialogFragment(); - dialogFragment.setUserID(directMessage.getSender().getId()); - DialogHelper.showDialog(activity, dialogFragment); + icon.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + UserDetailDialogFragment dialogFragment = new UserDetailDialogFragment(); + dialogFragment.setUserID(directMessage.getSender().getId()); + DialogHelper.showDialog(activity, dialogFragment); + } }); TextView header = (TextView) convertedView.findViewById(R.id.textview_status_header); header.setTextSize(textSize); @@ -120,10 +123,13 @@ public class MessageViewModel implements IViewModel { favorited.setVisibility(View.GONE); int colorBgMessage = Themes.getStyledColor(activity, theme, R.attr.color_message_bg_normal, 0); convertedView.setBackgroundColor(colorBgMessage); - convertedView.setOnClickListener(new ListItemClickListener(activity, () -> { - MessageDetailDialogFragment dialogFragment = new MessageDetailDialogFragment(); - dialogFragment.setMessageID(directMessage.getId()); - DialogHelper.showDialog(activity, dialogFragment); + convertedView.setOnClickListener(new ListItemClickListener(activity, new Runnable() { + @Override + public void run() { + MessageDetailDialogFragment dialogFragment = new MessageDetailDialogFragment(); + dialogFragment.setMessageID(directMessage.getId()); + DialogHelper.showDialog(activity, dialogFragment); + } })); return convertedView; } -- cgit v1.2.3