80,349
社区成员
发帖
与我相关
我的任务
分享
public class MainActivity extends Activity
{
public static Point store=new Point();
//public static ArrayList<Point> loc=new ArrayList<Point>() ;//记录笔画坐标
private MyOpenHelper myopenhelper;
private MyView myview1;
public static TextView txtview;
public static ListView listv;
LinearLayout in;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button1 = (Button)findViewById(R.id.testsqlite);
txtview=(TextView)findViewById(R.id.text1);
listv=(ListView)findViewById(R.id.listview1);
in=(LinearLayout)findViewById(R.id.input);
myopenhelper = new MyOpenHelper(this);
button1.setOnClickListener(new ClickEvent());
Log.i("Oncreate","can excute!");
myview1 = (MyView) findViewById(R.id.drawview1);
Button btnmeaning=(Button)findViewById(R.id.btnmean);
if(btnmeaning==null)
{
System.out.println("btnmeaning is null");
}
btnmeaning.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0)
{
Intent intent=new Intent();
float pixels[];
int count=0;
ArrayList<Float> picf=new ArrayList<Float>();
if( MyView.allpoints!=null && MyView.allpoints.length>0)
{Log.i("onclick","newloc is not null");
for(int i=0;i<MyView.allpoints.length;i++)
{
for(int j=0;j<MyView.allpoints[i].length;j++)
{
if(MyView.allpoints[i][j]==1)
{
float x=i;
float y=j;
picf.add(y);
picf.add(x);
count+=2;
}
}
}
Object obj[]=picf.toArray();
pixels=new float[obj.length];
for(int i=0;i<obj.length;i++)
{
pixels[i]=Float.parseFloat(obj[i].toString());
}
System.out.println(pixels.toString());
intent.putExtra("picaxis",pixels);
intent.setClass(MainActivity.this,SecondActivity.class);
startActivity(intent);
}
}
});
}
public void setTextView(String text)
{
txtview.setText(text);
}
public void setAdapter(ArrayAdapter<String> adapter)
{
listv.setAdapter(adapter);
}
@SuppressLint("NewApi")
public void setbackgroundpicture(String imagename)
{
int resid=getResources().getIdentifier(imagename,"drawable","com.example.ybhy");
System.out.println(imagename);
myview1.setBackgroundResource(resid);
}
Bihua bihua;
Word word;
Zib zib;
ZiYinYi ziyinyi;
public class ClickEvent implements OnClickListener
{
@Override
public void onClick(View v)
{
if(MyView.ccs!=null)
{
MyView.ccs.clear();
}
MyView.bh="";
if(MyView.loc!=null)
{
MyView.loc.clear();
}
if(MyView.cacheCanvas !=null)
{
MyView.cacheBitmap=Bitmap.createBitmap(MyView.view_width, MyView.view_height, Config.ARGB_8888);
MyView.cacheCanvas=new Canvas();
MyView.cacheCanvas.drawColor(0x00FFFFFF);
MyView.path=new Path();
MyView.cacheCanvas.setBitmap(MyView.cacheBitmap);
//myview1.clear();
myview1.setBackgroundDrawable(null);
myview1.invalidate(); }
listv.setAdapter(null);
txtview.setText("");
MyView.bhnum=0;
MyView.newpoints=new int [myview1.getHeight()][myview1.getWidth()];
MyView.allpoints=new int[myview1.getHeight()][myview1.getWidth()];
}
}
public class MyView extends View {
public static ArrayList<Point> loc=new ArrayList<Point>();//记录笔画坐标
public static ArrayList<Point> newloc=new ArrayList<Point>();//处理后的坐标
public static int newpoints[][];//处理后鼠标轨迹
public static int allpoints [][];//整个字的鼠标轨迹
......
public static ArrayList ccs=new ArrayList();
public static DataBaseHelper dbhelp;
public static SQLiteDatabase db;
MainActivity ay;
public MyView(Context context, AttributeSet attrs)
{
super(context, attrs);
ay=(MainActivity)context;
dbhelp=new DataBaseHelper(context);
view_width=context.getResources().getDisplayMetrics().widthPixels;
view_height=context.getResources().getDisplayMetrics().heightPixels;
......
}
......
@Override
public boolean onTouchEvent(MotionEvent event) {
int x=(int)event.getX();
int y=(int)event.getY();
switch(event.getAction())
{
case MotionEvent.ACTION_DOWN:
......
break;
case MotionEvent.ACTION_MOVE:
if(flag)
{ int history=event.getHistorySize();
for(int i=0;i<history;i++)
{
x=(int)event.getHistoricalX(i);
y=(int)event.getHistoricalY(i);
loc.add(new Point(x,y));
}
path.moveTo(x,y);
path.lineTo(x,y);
cacheCanvas.drawLine(startX,startY,x,y,paint);
startX=x;
startY=y;
loc.add(new Point(startX,startY));
}
break;
case MotionEvent.ACTION_UP:
path.reset();
System.out.println("loc"+loc.toString());
bhnum++;
pic=new int[this.view_height][this.view_width];
for(int i=0;i<pic.length;i++)
for(int j=0;j<pic[i].length;j++)
pic[i][j]=0;
flag=false;
for(int i=0;i<loc.size();i++)
{
Point st=(Point)loc.get(i);
if(st.x>=this.view_width|| st.x<0|| st.y>=this.view_height||st.y<0)
{
continue;
}
int sty=st.y;
int stx=st.x;
pic[sty][stx]=1;
}
ArrayList aa=new ArrayList();
aa=ljshibie();费时操作
ArrayList bb=new ArrayList();
bb=tjshibie();费时操作
ccs=PutResult(aa,bb);
if( ccs !=null &&ccs.size()>0)
{
CharSequence cs=(String)ccs.get(0);
ay.setTextView((String)ccs.get(0));给MainActivity的textview赋值
db=dbhelp.getReadableDatabase();
Cursor cur=db.rawQuery("select imgname from zipic where zi=?",new String[]{cs.toString()});
while(cur.moveToNext())
{
String picname=cur.getString(cur.getColumnIndex("imgname"));
System.out.println(picname);
ay.setbackgroundpicture(picname);
}
String [] strr=new String [ccs.size()];
for(int i=0;i<ccs.size();i++)
{
strr[i]=(String)ccs.get(i);
}
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this.getContext(),android.R.layout.simple_list_item_single_choice,strr);
ay.setAdapter(adapter);
loc.clear();
newloc.clear();
newpoints=new int[this.view_height][this.view_width];
}
break;
}
invalidate();
return true;
}