Я создаю интерфейс, где мне нужно обрабатывать события касания. В частности, я мог бы включить их только в ограниченную область в фрагменте. Чтобы лучше понять проблему, соблюдать стандарты и цель моего приложения, я планировал ящик навигации, который предполагает наличие большого количества фрагментов (вместо действий). Активность с сенсорными событиями выполняется довольно легко, с другой стороны, я прочитал в Интернете, что с фрагментами может стать проблемой.
Мое приложение на архитектурном уровне выглядит следующим образом: - MainActivity.java - NavigationDrawer.java - TestFragment.java(для одного фрагмента теперь, ожидая решения проблемы)
Я не нашел решения или учебника, в котором объясняется, как это сделать (или как обходиться с проблемой). Затем я прошу вас, упрощая задачу только " включить событие касания в фрагменте (getPressure() в этом случае). Ниже приведены некоторые фрагменты кода, которые могут помочь решить проблему:
TestFragment
public class TestFragment extends Fragment {
private static final String ARG_SECTION_NUMBER = "section_number";
public static TestFragment newInstance(int sectionNumber) {
TestFragment fragment = new TestFragment();
Bundle args = new Bundle();
args.putInt(ARG_SECTION_NUMBER, sectionNumber);
fragment.setArguments(args);
return fragment;
}
public TestFragment() {}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_test, container, false);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// Here I want to return the press value (0 to 1)
}
}
Как связать слушателя со всем фрагментом? А в случае конкретной области? Наконец, как я могу вернуть значение давления на экран?
Большое вам спасибо за советы!:)