Blame |
Last modification |
View Log
| RSS feed
package com.gebauz.ZhuyinQuiz;
import android.app.Activity;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.TextView;
public class ZhuyinTableActivity
extends Activity
{
public class TableAdapter
extends BaseAdapter
{
private Context mContext
;
private ZhuyinTable mZhuyinTable
;
public TableAdapter
(Context c
)
{
mContext = c
;
mZhuyinTable =
new ZhuyinTable
(Constants.
QUIZ_ALL);
}
public int getCount
()
{
return mZhuyinTable.
getCount();
}
public Object getItem
(int position
)
{
return null;
}
public long getItemId
(int position
)
{
return 0;
}
// create a new ImageView for each item referenced by the Adapter
public View getView
(int position,
View convertView, ViewGroup parent
)
{
TextView view
;
if (convertView ==
null)
{
// if it's not recycled, initialize some attributes
view =
new TextView
(mContext
);
final float scale = mContext.
getResources().
getDisplayMetrics().
density;
int buttonSize =
(int) (Constants.
TABLE_ITEM_SIZE_DIP * scale + 0.5f
);
view.
setLayoutParams(new GridView.
LayoutParams(buttonSize, buttonSize
));
view.
setPadding(8,
8,
8,
8);
view.
setTextColor(Color.
WHITE);
view.
setBackgroundColor(Constants.
GRID_BACKGROUND_COLOR);
view.
setGravity(Gravity.
CENTER);
}
else
{
view =
(TextView
)convertView
;
}
String textItem = mZhuyinTable.
getZhuyin(position
) +
"\n" + mZhuyinTable.
getPinyin(position
);
if (mZhuyinTable.
getExtraPronounciation(position
).
length() > 0)
textItem = textItem +
" " + mZhuyinTable.
getExtraPronounciation(position
);
// make text size smaller for longer texts
if ((mZhuyinTable.
getPinyin(position
).
length() + mZhuyinTable.
getExtraPronounciation(position
).
length()) > 4)
view.
setTextSize(Constants.
TABLE_TEXT_SIZE_LONG_ITEM);
else
view.
setTextSize(Constants.
TABLE_TEXT_SIZE_SHORT_ITEM);
view.
setText(textItem
);
return view
;
}
}
@
Override
public void onCreate
(Bundle savedInstanceState
)
{
super.
onCreate(savedInstanceState
);
setContentView
(R.
layout.
zhuyintable);
GridView gridview =
(GridView
)findViewById
(R.
id.
gridview);
gridview.
setAdapter(new TableAdapter
(this));
}
}