Opto però per una costruzione programmatica dell'immagine anziché statica come nelle shapes, perché ci sono maggiori possibilità di customizzazione.
Per il momento, salvo il codice per eventuali successivi ripassi e approfondimenti:
public class MainActivity extends AppCompatActivity { RelativeLayout mainLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mainLayout=(RelativeLayout)findViewById(R.id.mainLayout); LayoutInflater inflater=(LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View view=(View)inflater.inflate(R.layout.inflatabile,null); mainLayout.addView(view); RelativeLayout.LayoutParams viewParams=(RelativeLayout.LayoutParams)view.getLayoutParams(); viewParams.height=170; viewParams.width=170; } float dpToPixels(float dp){ DisplayMetrics metrics= Resources.getSystem().getDisplayMetrics(); float px=dp*(metrics.densityDpi/160f); return Math.round(px); } }
<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:top="12dp"> <shape android:shape="rectangle"> <solid android:color="#fe888888" /> </shape> </item> <item android:right="60dp"> <shape android:shape="rectangle"> <solid android:color="#fe888888" /> </shape> </item> <item android:top="17dp" android:bottom="5dp" android:left="5dp" android:right="5dp"> <shape android:shape="rectangle"> <solid android:color="#feffff88" /> </shape> </item> <item android:right="65dp" android:left="5dp" android:bottom="5dp" android:top="5dp"> <shape android:shape="rectangle"> <solid android:color="#feffff88" /> </shape> </item> </layer-list>...e il layout che ha per sfondo la layer list:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/folder"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ETICHETTA" android:id="@+id/textView" android:layout_alignParentTop="true" android:layout_alignParentStart="true" android:layout_marginTop="17dp" android:layout_marginLeft="5dp"/> </RelativeLayout>E riprendo a disegnare a runtime col canvas...
Nessun commento:
Posta un commento