1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/byoooy-QuickBind

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

QuickBind — это фреймворк для внедрения представлений на платформе Android.

Он позволяет выполнять следующие операции:

  • BindLayout: привязка файла макета Activity.
  • BindView: привязка элементов управления View без необходимости использования findViewById.
  • OnClick: поддержка событий OnClickListener.
  • OnLongClick: поддержка событий OnLongClickListener.
  • OnItemClick: поддержка событий OnItemClickListener.
  • OnItemLongClick: поддержка событий OnItemLongClickListener.
  • OnPageChange: поддержка событий OnPageChangeListener.
  • OnCheckedChange: поддержка событий OnCheckedChangeListener.
  • OnFocusChange: поддержка событий OnFocusChangeListener.
  • OnTouch: поддержка событий OnTouchListener.

Использование фреймворка

  • В Activity, Fragment и View (особенно ViewHolder) необходимо использовать следующие методы:
    1. В Activity:
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          QuickBind.bind(this);
      }
    2. Во Fragment:
      @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
      View view = inflater.inflate(R.layout.fragment, container, false);
      QuickBind.bind(this, view);
      return view;
      }
    3. В View (ViewHolder):
      public ViewHolder(View view) {
      QuickBind.bind(this, view);
      }
  • BindLayout
    @BindLayout(R.layout.activity_main)
    public class MainActivity extends Activity {...}
  • BindView
    public class MainActivity extends Activity {
    @BindView(R.id.check)
    private CheckBox check;
    @BindView(R.id.text1)
    private TextView mText1;
    ...
    }
    
    public class MainAFragment extends Fragment {
    @BindView(R.id.check)
    private CheckBox check;
    @BindView(R.id.text1)
    private TextView mText1;
    ...
    }
  • OnClick
    @OnClick(R.id.btn_list)
    private void start(View view) {
    Log.e("MainActivity", "测试onClick事件是否触发");
    }
  • OnLongClick
    @OnLongClick(R.id.btn_list)
    private boolean longClick(View view) {
    Log.e("MainActivity", "长按测试成功");
    return false;
    }
  • OnItemClick
    @OnItemClick(R.id.listview)
    private void onItemClick(AdapterView<?> arg0, View arg1, int position,
                long arg3) {
    Log.e("ListActivity", "onItemClick 测试成功" + position);
    }
  • OnItemLongClick
    @OnItemLongClick(R.id.listview)
    private boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                int position, long arg3) {
    Log.e("ListActivity", "onItemLongClick 测试成功" + position);
    return true;
    }
  • OnPageChange
    @OnPageChange(value = R.id.viewpager, callback = "onPageSelected")
    private void onPageSelected(int pos) {
    Log.e("MainActivity", "测试OnPageChange  选中:" + pos);
    }
  • OnCheckedChange
    @OnCheckedChange(R.id.check)
    private void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
    Log.e("MainActivity", "测试@OnCheckedChange事件是否触发");
    buttonView.setChecked(isChecked);
    }
  • OnFocusChange
    @OnFocusChange({R.id.edit,R.id.edit1})
    private void onFocusChange(View v, boolean hasFocus) {
    Log.e("MainActivity", "测试@OnFocusChange事件是否触发");
    }
  • OnTouch
    @OnTouch(R.id.text1)
    private boolean onTouch(View v, MotionEvent event) {
    Log.e("MainActivity", "测试@OnTouch事件是否触тывает");
    return false;
    }

Совместимость и проблемы

  • Совместимость: протестировано на большинстве телефонов, работает нормально, в настоящее время ошибок не обнаружено.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Фреймворк для внедрения Android-представлений, реализован с использованием xUtils. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/byoooy-QuickBind.git
git@api.gitlife.ru:oschina-mirror/byoooy-QuickBind.git
oschina-mirror
byoooy-QuickBind
byoooy-QuickBind
master