Этот фреймворк поддержки предназначен для всех проектов Android и предоставляет некоторые базовые и удобные услуги.
public class TestRequestActivity extends RequestActivity<TestRequestActivity.TestModel> {
String url;
Map<String, Object> params;
@Override
public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
super.onCreate(savedInstanceState, persistentState);
parserIntent();
initData();
initViews();
startRequest();
}
}
``` @Override
public void parserIntent() {
super.parserIntent();
url = getIntent().getStringExtra("/... ");
params.put(key, value);
}
@Override
public void initData() {
super.initData();
}
@Override
public void initViews() {
super.initViews();
// Fragment for displaying loading
mRequestHolderFragment = new AbstractRPFragment() {
@Override
public void initViews(View rootView) {
mLoadingFrame = rootView.findViewById(id);
mEmptyFrame = rootView.findViewById(id);
mErrorFrame = rootView.findViewById(id);
tvEmptyTips = rootView.findViewById(id);
tvErrorSceneTips = rootView.findViewById(id);
tvLoadTip = rootView.findViewById(id);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.activity_list_item, container);
initViews(v);
return v;
}
};
}```java
@Override
public void onRequestStart(Request<TestModel> request) {
super.onRequestStart(request);
}
}
```java
public void onRequestSuccess(TestModel result) {
super.onRequestSuccess(result);
}
@Override
public void onRequestFailure(VolleyError error) {
super.onRequestFailure(error);
}
private void startRequest() {
GsonRequest<TestModel> request = new GsonRequest<>(url, params, TestModel.class, this, this);
addRequest(request);
}
RequestHolderFragment
/**
*
* @ClassName: RequestHolderFragment
* @Description: Наследует от `AbstractRPFragment`, требуется реализовать методы `initViews()` и `onCreateView()`,
* а также загрузить макет и привязать компоненты в подклассах
* @author: Bvin
* @date: 2 февраля 2015 г., 10:53:53
*/
public class RequestHolderFragment extends AbstractRPFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.univ_request_place_holder, container, false);
initViews(rootView);
return rootView;
}
@Override
public void initViews(View rootView) {
mLoadingFrame = rootView.findViewById(R.id.loading_frame);
mEmptyFrame = rootView.findViewById(R.id.empty_frame);
mErrorFrame = rootView.findViewById(R.id.error_frame);
// Ошибка — это вид, который можно нажать для повторной отправки запроса
mErrorFrame.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
getRequestActivity().reloadRequest();
}
});
tvLoadTip = (TextView) mLoadingFrame.findViewById(R.id.tvLoadTip);
tvEmptyTips = (TextView) mEmptyFrame.findViewById(R.id.tvEmptyTips);
tvErrorSceneTips = (TextView) mErrorFrame.findViewById(R.id.tvErrorSceneTips);
defaultLoadTips = ResourceFinder.findString(getActivity(), R.string.loading_tips);
defaultEmptyTips = ResourceFinder.findString(getActivity(), R.string.empty_tips);
defaultSceneError = ResourceFinder.findString(getActivity(), R.string.error_scene_tips);
}
}
``````java
defaultErrorSolution = ResourceFinder.findString(getActivity(), R.string.error_solution_click_retry);
}
Copyright 2014-2015 Bvin
Лицензировано по лицензии Apache License, Версия 2.0 («Лицензия»);
вы можете использовать этот файл только в соответствии с Лицензией.
Вы можете получить копию Лицензии по адресу
http://www.apache.org/licenses/LICENSE-2.0
Без ограничений, возложенных применимым законом или письменно согласованного, программное обеспечение, распространяемое в рамках Лицензии, предоставляется «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ ИЛИ УСЛОВИЙ ВОЗМОЖНОГО РОДА, как явленных, так и подразумеваемых. Увидеть Лицензию для конкретного языка, регулирующего права и ограничения в рамках Лицензии.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )