私の機能は、私のすべてのバインディングアクティビティに共通するようにしようとしています。私はあなたにこれについていくつかの提案を聞きたいと思います。メソッド内の汎用オブジェクトのフォーム
のように現時点では私のコードが見えます: - :
public static void stateDialog(Context context, String[] stateList, final ViewDataBinding<T> binding) {
}
stateDialogは私のアラートクラスの内部で作成された関数であると私はちょうどこの機能になりたい
public static void stateDialog(Context context, String[] stateList, final FragmentSendAlertBinding binding) {
mStateDialog = new Dialog(context);
mStateDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
mStateDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
mStateDialog.show();
mStateDialog.setCancelable(false);
mStateDialog.setContentView(R.layout.dialog_select_state);
CardView cvState = (CardView) mStateDialog.findViewById(R.id.cv_state);
final ListView states = (ListView) mStateDialog.findViewById(R.id.countryList);
final TextView tvCancel = (TextView) mStateDialog.findViewById(R.id.tv_cancel);
final Animation myAnim = AnimationUtils.loadAnimation(context, R.anim.bounce);
MyBounceInterpolator interpolator = new MyBounceInterpolator(0.2, 20);
myAnim.setInterpolator(interpolator);
cvState.startAnimation(myAnim);
ArrayAdapter<String> itemList = new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1, stateList);
states.setAdapter(itemList);
states.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
binding.tvState.setText((String) arg0.getItemAtPosition(position));
mStateDialog.dismiss();
}
});
tvCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mStateDialog.dismiss();
}
});
}
は私が好きなものを使用することができますすべての私のBindingアクティビティに共通です。私はそれぞれのバインディングアクティビティに対して別々の関数を作成したくありません。私のこの機能だけではなく、FragmentSendAlertBinding
この5月はあなたに愚かなようだが、私はちょうどそれを知りたいためにすべての私の結合活性のために使用することができるように
これを達成するためにどのような方法があります。
おかげ&よろしく 私はちょうど任意の助けをいただければ幸いです
をしようと、前の一般的なクラスを作成したことがありません!!!。
インタフェースメソッドでバインディングオブジェクトを送信できますか? – Siddharth
私はあなたがそれを送ることができると思うが、私はそれについてはわからない –