/* * Copyright 2014 Soichiro Kashima * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.marshalchen.ultimaterecyclerview.demo.scrollableobservable; import android.content.res.TypedArray; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.RecyclerView; import android.util.TypedValue; import android.view.View; import android.widget.AbsListView; import android.widget.ArrayAdapter; import android.widget.ListView; import com.marshalchen.ultimaterecyclerview.demo.R; import com.marshalchen.ultimaterecyclerview.demo.rvComponents.sectionZeroAdapter; import java.util.ArrayList; public abstract class BaseActivity extends AppCompatActivity { private static final int NUM_OF_ITEMS = 100; private static final int NUM_OF_ITEMS_FEW = 3; protected int getActionBarSize() { TypedValue typedValue = new TypedValue(); int[] textSizeAttr = new int[]{R.attr.actionBarSize}; int indexOfAttrTextSize = 0; TypedArray a = obtainStyledAttributes(typedValue.data, textSizeAttr); int actionBarSize = a.getDimensionPixelSize(indexOfAttrTextSize, -1); a.recycle(); return actionBarSize; } protected int getScreenHeight() { return findViewById(android.R.id.content).getHeight(); } public static ArrayList<String> getDummyData() { return getDummyData(NUM_OF_ITEMS); } public static ArrayList<String> getDummyData(int num) { ArrayList<String> items = new ArrayList<>(); for (int i = 1; i <= num; i++) { items.add("Item " + i); } return items; } protected void setDummyData(ListView listView) { setDummyData(listView, NUM_OF_ITEMS); } protected void setDummyDataFew(ListView listView) { setDummyData(listView, NUM_OF_ITEMS_FEW); } protected void setDummyData(ListView listView, int num) { listView.setAdapter(new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, getDummyData(num))); } protected void setDummyDataWithHeader(ListView listView, int headerHeight) { setDummyDataWithHeader(listView, headerHeight, NUM_OF_ITEMS); } protected void setDummyDataWithHeader(ListView listView, int headerHeight, int num) { View headerView = new View(this); headerView.setLayoutParams(new AbsListView.LayoutParams(AbsListView.LayoutParams.MATCH_PARENT, headerHeight)); headerView.setMinimumHeight(headerHeight); // This is required to disable header's list selector effect headerView.setClickable(true); setDummyDataWithHeader(listView, headerView, num); } protected void setDummyDataWithHeader(ListView listView, View headerView, int num) { listView.addHeaderView(headerView); setDummyData(listView, num); } /* protected void setDummyData(GridView gridView) { gridView.setAdapter(new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, getDummyData())); } protected void setDummyData(RecyclerView recyclerView) { setDummyData(recyclerView, NUM_OF_ITEMS); } protected void setDummyDataFew(RecyclerView recyclerView) { setDummyData(recyclerView, NUM_OF_ITEMS_FEW); }*/ protected void setDummyData(RecyclerView recyclerView, int num) { recyclerView.setAdapter(new sectionZeroAdapter(getDummyData(num))); } protected void setDummyData(RecyclerView recyclerView) { setDummyData(recyclerView, NUM_OF_ITEMS); } /* protected void setDummyDataWithHeader(RecyclerView recyclerView, int headerHeight) { View headerView = new View(this); headerView.setLayoutParams(new AbsListView.LayoutParams(AbsListView.LayoutParams.MATCH_PARENT, headerHeight)); headerView.setMinimumHeight(headerHeight); // This is required to disable header's list selector effect headerView.setClickable(true); // setDummyDataWithHeader(recyclerView, headerView); } protected void setDummyDataWithHeader(RecyclerView recyclerView, View headerView) { recyclerView.setAdapter(new SimpleAdapter(this, getDummyData(), headerView)); }*/ }