دوست عزیز خب عملا نباید هم مچ بشه .شما از واحد dp استفاده کردید.خب واحد dp میاد تا حدی مشکلات pixel رفع میکنه.ولی کارش این نیست که بیاد با صفحه شما ویوها رو مچ کنه.
خب شما اگر توجه کنید برای edittext چه مقداری رو برای width قرار دادید؟270 .خب اگر یک صفحه در حالت landscop مثلا 800 باشه.270 تا به آن اختصاص داده میشه.60 هم برای دکمه قرار دادید.میشه 360 تا..حدود 440 dp خالی میمونه. مثل تصویر دوم که ضمیمه کردید.
نباید به این صورت شما پهنا بدید.
بیشتر سعی کنید از wrap_content استفاده کنید.بعدش بهش وزن بدید.یعنی پهنای ادیت تکست و دکمه رو کنید wrap_content .
یعنی به اندازه حجم خودشون.
حالا واسه اینکه قسمت فضای خالی رو پوشش بدید از وزن دهی استفاده کنید.
این دستور میگه فضای خالی رو به نسبت وزن ویوها تقسیم کن.مثلا اگر برای دکمه بزارید1 و برای ادیت تکست بزارید 4.
این به این معنی هست.که فضای خالی تقسیم میشه بین اون دو ویو.و ادیت تکست 4 برابر دکمه فضا رو مال خودش میکنه.
کد شما به صورت زیر میشه ویراش شه.
کد پیاچپی:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:orientation="horizontal"
android:background="#006ad0"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="top">
<EditText
android:maxHeight="200dp"
android:layout_marginLeft="10dp"
android:hint="چیزی بنویسید . . ."
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="10"
android:id="@+id/et"/>
<Button
android:layout_marginLeft="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:id="@+id/btn1"
android:text="aaaa"
android:layout_weight="4"
android:onClick="onClickBtn"
android:background="#006ad0"/>
</LinearLayout>
</LinearLayout>