blob: f5514bfdfc858f87168d450171c057e644ef926d [file] [log] [blame]
package test.pkg;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.LinearLayout;
import android.widget.TextView;
import java.util.ArrayList;
@SuppressWarnings({"ConstantConditions", "UnusedDeclaration"})
public abstract class ViewHolderTest extends BaseAdapter {
@Override
public int getCount() {
return 0;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
public static class Adapter1 extends ViewHolderTest {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
return null;
}
}
public static class Adapter2 extends ViewHolderTest {
LayoutInflater mInflater;
public View getView(int position, View convertView, ViewGroup parent) {
// Should use View Holder pattern here
convertView = mInflater.inflate(R.layout.your_layout, null);
TextView text = (TextView) convertView.findViewById(R.id.text);
text.setText("Position " + position);
return convertView;
}
}
public static class Adapter3 extends ViewHolderTest {
LayoutInflater mInflater;
public View getView(int position, View convertView, ViewGroup parent) {
// Already using View Holder pattern
if (convertView == null) {
convertView = mInflater.inflate(R.layout.your_layout, null);
}
TextView text = (TextView) convertView.findViewById(R.id.text);
text.setText("Position " + position);
return convertView;
}
}
public static class Adapter4 extends ViewHolderTest {
LayoutInflater mInflater;
public View getView(int position, View convertView, ViewGroup parent) {
// Already using View Holder pattern
//noinspection StatementWithEmptyBody
if (convertView != null) {
} else {
convertView = mInflater.inflate(R.layout.your_layout, null);
}
TextView text = (TextView) convertView.findViewById(R.id.text);
text.setText("Position " + position);
return convertView;
}
}
public static class Adapter5 extends ViewHolderTest {
LayoutInflater mInflater;
public View getView(int position, View convertView, ViewGroup parent) {
// Already using View Holder pattern
convertView = convertView == null ? mInflater.inflate(R.layout.your_layout, null) : convertView;
TextView text = (TextView) convertView.findViewById(R.id.text);
text.setText("Position " + position);
return convertView;
}
}
public static class Adapter6 extends ViewHolderTest {
private Context mContext;
private LayoutInflater mLayoutInflator;
private ArrayList<Double> mLapTimes;
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (mLayoutInflator == null)
mLayoutInflator = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = convertView;
if (v == null) v = mLayoutInflator.inflate(R.layout.your_layout, null);
LinearLayout listItemHolder = (LinearLayout) v.findViewById(R.id.laptimes_list_item_holder);
listItemHolder.removeAllViews();
for (int i = 0; i < mLapTimes.size(); i++) {
View lapItemView = mLayoutInflator.inflate(R.layout.laptime_item, null);
if (i == 0) {
TextView t = (TextView) lapItemView.findViewById(R.id.laptime_text);
//t.setText(TimeUtils.createStyledSpannableString(mContext, mLapTimes.get(i), true));
}
TextView t2 = (TextView) lapItemView.findViewById(R.id.laptime_text2);
if (i < mLapTimes.size() - 1 && mLapTimes.size() > 1) {
double laptime = mLapTimes.get(i) - mLapTimes.get(i + 1);
if (laptime < 0) laptime = mLapTimes.get(i);
//t2.setText(TimeUtils.createStyledSpannableString(mContext, laptime, true));
} else {
//t2.setText(TimeUtils.createStyledSpannableString(mContext, mLapTimes.get(i), true));
}
listItemHolder.addView(lapItemView);
}
return v;
}
}
public static class Adapter7 extends ViewHolderTest {
LayoutInflater inflater;
@Override
public View getView(final int position, final View convertView, final ViewGroup parent) {
View rootView = convertView;
final int itemViewType = getItemViewType(position);
switch (itemViewType) {
case 0:
if (rootView != null)
return rootView;
rootView = inflater.inflate(android.R.layout.simple_list_item_1, parent, false);
break;
}
return rootView;
}
}
}