Anyone? Regards, Junior
On Wed, May 20, 2009 at 9:51 AM, Junior Einsfeld <[email protected]>wrote: > Hello, > > I have my class below that is working. Inside it is another class that > extends View and that is also running. > > I need to add two buttons on this screen and then create the layout below, > which has a View and two buttons: > <?xml version="1.0" encoding="utf-8"?> > <LinearLayout xmlns:android=http://schemas.android.com/apk/res/android > android:layout_width="fill_parent" > android:layout_height="fill_parent" > android:orientation="vertical"> > > <View android:id="@+id/View01" > android:layout_width="fill_parent" > android:layout_height="360px" > android:scrollbarSize="100px" > android:paddingBottom="-20px" > android:clickable="true" > android:drawingCacheQuality="auto" > android:focusable="true" > android:focusableInTouchMode="true" > android:keepScreenOn="true" > android:longClickable="true" android:visibility="visible"> > </View> > > <Button android:layout_height="wrap_content" > > android:visibility="visible" > > android:text="Cancelar" > > android:layout_marginTop="10px" > > android:layout_width="150px" > > android:width="150px" > > android:id="@+btListaServicos/cancel"/> > > <Button android:layout_height="wrap_content" > > android:text="Compor Serviços" > > android:layout_marginTop="-49px" > > android:width="150px" > > android:layout_width="150px" > > android:layout_marginLeft="170px" > > android:id="@+btListaServicos/comporServicos"> > > </Button> > > </LinearLayout> > > How do I display the screen object in my View from the layout? > > In this way does not work: > > public class ServiceComposition extends Activity { > > private DViewDbAdapter dbAdapter; > > private WsServicos Servico; > > private WsMetodos Metodo; > > private Parametros Parametro; > > private Parametros Returns; > > Map<Integer, WsServicos> mServices; > > @Override > > protected void onCreate(Bundle savedInstanceState) { > > // TODO Auto-generated method stub > > super.onCreate(savedInstanceState); > > *setContentView(R.layout.service_composition);* > > dbAdapter = new DViewDbAdapter(this); > > dbAdapter.open(); > > long idComposition = getIntent().getLongExtra("idComposition", 3); > > this.mServices = populaDados(idComposition); > > *View view = findViewById(R.id.View01);* > > *view = new ExibeView(this, mServices);* > > //setContentView(new ExibeView(this, mServices)); > > } > > public class ExibeView extends View { > > private ImagemObjeto[] imagem; > > private int balID = 0; // variable to know what ball is being dragged > > private boolean moveu = false; > > private int distHorz = 60; > > private int distVert = 60; > > Map<Integer, Point> mPoint = new HashMap<Integer, Point>(); > > Point point; > > /* > > * Point point0 = new Point(); Point point1 = new Point(); Point point2 > > * = new Point(); Point point3 = new Point(); Point point4 = new > > * Point(); > > */ > > public ExibeView(Context context, Map<Integer, WsServicos> mServices) { > > super(context); > > // TODO Auto-generated constructor stub > > setFocusable(true); // necessary for getting the touch events > > int QtdServices = mServices.size(); > > this.imagem = new ImagemObjeto[QtdServices]; > > for (int i = 0; i < QtdServices; i++) { > > point = new Point(); > > point.x = distHorz; > > point.y = distVert; > > if (distHorz >= 180) { > > distHorz = 0; > > distVert += 60; > > } > > distHorz += 60; > > mPoint.put(i, point); > > } > > for (int i = 0; i < QtdServices; i++) { > > imagem[i] = new ImagemObjeto(context, R.drawable.quadrado, > > mPoint.get(i)); > > } > > } > > // the method that draws the balls > > @Override > > protected void onDraw(Canvas canvas) { > > // canvas.drawColor(0xFFCCCCCC); //if you want another background > > // color > > Paint paint = new Paint(); > > paint.setColor(-16776961); > > // draw the balls on the canvas > > for (ImagemObjeto img : imagem) { > > canvas.drawBitmap(img.getBitmap(), img.getX(), img.getY(),null); > > } > > // calculaTraco(canvas, point0, point1, imagem[0]); > > } > > // events when touching the screen > > public boolean onTouchEvent(MotionEvent event) { > > int eventaction = event.getAction(); > > int X = (int) event.getX(); > > int Y = (int) event.getY(); > > boolean move = false; > > switch (eventaction) { > > case MotionEvent.ACTION_DOWN: // touch down so check if the finger > > // is on a ball > > balID = 0; > > for (ImagemObjeto img : imagem) { > > // check if inside the bounds of the ball (circle) > > // get the center for the ball > > int centerX = img.getX() + 25; > > int centerY = img.getY() + 25; > > // calculate the radius from the touch to the center of the > > // ball > > double radCircle = Math > > .sqrt((double) (((centerX - X) * (centerX - X)) + (centerY - Y) > > * (centerY - Y))); > > // if the radius is smaller then 23 (radius of a ball is > > // 22), then it must be on the ball > > if (radCircle < 23) { > > balID = img.getID(); > > moveu = false; > > break; > > } > > // check all the bounds of the ball (square) > > // if (X > ball.getX() && X < ball.getX()+50 && Y > > > // ball.getY() && Y < ball.getY()+50){ > > // balID = ball.getID(); > > // break; > > // } > > } > > break; > > case MotionEvent.ACTION_MOVE: // touch drag with the ball > > // move the balls the same as the finger > > if (balID > 0) { > > imagem[balID - 1].setX(X - 25); > > imagem[balID - 1].setY(Y - 25); > > moveu = true; > > } > > break; > > case MotionEvent.ACTION_UP: > > // touch drop - just do things here after dropping > > //seleciona(moveu, imagem[balID - 1]); > > if (!moveu){ > > DView dv = new DView(); > > dv.showAlertCustom(ServiceComposition.this); > > } > > break; > > } > > // redraw the canvas > > invalidate(); > > return true; > > } > Can help me? > > Thanks! > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Beginners" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-beginners?hl=en -~----------~----~----~----~------~----~------~--~---

