El botón flotante de Android no se muestra
Trato de hacer la página de dibujo con lienzo y añadir el botón flotante en la esquina de algunas acciones. Pero no está apareciendo. Estas son mis clases
DrawView.java
- Soporte de lienzo HTML5 y vista Web de Android
- Rellenar lienzo fuera del rectángulo
- Cómo dibujar AdMob en un lienzo?
- DrawLine problema con Paint.StrokeWidth = 1 en Android
- Gridview, permite que el lienzo de fondo dibuje fuera de la vista
public class DrawView extends View implements View.OnTouchListener { private List<Point> points = new ArrayList<>(); private Paint paint = new Paint(); public DrawView(Context c) { super(c); setFocusable(true); setFocusableInTouchMode(true); this.setOnTouchListener(this); paint.setColor(Color.BLACK); } @Override public void onDraw(Canvas canvas) { for (Point point : points) { canvas.drawCircle(point.x, point.y, 30, paint); } } public boolean onTouch(View view, MotionEvent event) { Point point = new Point(); point.x = event.getX(); point.y = event.getY(); points.add(point); invalidate(); return true; }}
Y Actividad principal
public class DrawingPage extends AppCompatActivity { private DrawView drawView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_drawing_page); drawView = new DrawView(getApplicationContext()); drawView.setBackgroundColor(Color.WHITE); setContentView(drawView); drawView.requestFocus(); }}
XML
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="reminder.com.picsartdrawing.DrawingPage"> <android.support.design.widget.FloatingActionButton android:id="@+id/myFAB" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/ic_launcher" app:elevation="4dp" android:layout_alignParentBottom="true" android:layout_alignParentEnd="true" /> </RelativeLayout>
¿Pero el botón flotante no está apareciendo, ninguna solución? Captura de pantalla
¡¡¡EDITAR!!! En el método onCreate de la actividad He cambiado esto, y ahora tengo página de lienzo de dibujo con el botón.
RelativeLayout layout = (RelativeLayout) findViewById(R.id.layout); drawView = new DrawView(getApplicationContext()); drawView.setBackgroundColor(Color.WHITE); drawView.requestFocus(); assert layout != null; layout.addView(drawView);
- La ampliación / transformación de lienzo de Android no modifica el área seleccionada
- Cómo funciona drawBitmapMesh en el lienzo android
- Cambiar el color en Paint and Canvas en Android
- Android dibujo sobre lienzo
- Tratando de crear una pintura de borrador para lienzo
- Guardar rutas de lienzo en SharedPreference y volver a dibujar en lienzo cuando se vuelva a abrir la aplicación
- Dibujar el camino con el agujero (android)
- Lanzar una lona de Android
En onCreate()
se reemplaza 2 veces con setContentView()
la vista "main", por lo que intente con sólo esto:
setContentView(R.layout.activity_drawing_page);
Debe agregar esto en el método onCreate de su clase de actividad:
FloatingActionButton fab = (FloatingActionButton) findViewById (R.id.fab); fab.setOnClickListener (new View.OnClickListener () { @Override public void onClick (View view) { Snackbar.make (view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction ("Action", null).show (); } });
- Animación de Android para girar una vista y congelarla después de la rotación
- Conflicto de modo de 12/24 horas