2016-01-23 103 views
-1

我想創建一個終端/控制檯,用戶可以在其中輸入命令。我知道java的,但我是新來的XML,所以我想知道我怎麼可以在文字產卵的文本,如果它得到長期應該是滾動的,這裏有一個畫面:如何創建終端/控制檯

enter image description here

和這裏的我爲它的XML cpde:

<?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" 
    android:background="#d1d1d1"> 

    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:weightSum="1"> 

     <EditText 
      android:layout_width="175dp" 
      android:layout_height="wrap_content" 
      android:id="@+id/consoleText" 
      android:layout_gravity="bottom" 
      android:hint="Command" 
      android:layout_weight="0.99" /> 

     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Send" 
      android:id="@+id/sendButton" 
      android:layout_gravity="bottom" /> 
    </LinearLayout> 

</LinearLayout> 

,這裏是我的獲取文本代碼:

public class FragmentConsole extends Fragment{ 
    EditText text; 
    Button button; 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View view = inflater.inflate(R.layout.console, 
       container, false); 
     button = (Button) view.findViewById(R.id.sendButton); 
     text = (EditText)view.findViewById(R.id.consoleText); 
     button.setOnClickListener(new View.OnClickListener() 
     { 
      @Override 
      public void onClick(View v) 
      { 
       Log.v("EditText", text.getText().toString()); 
      } 
     }); 
     return view; 
    } 
} 

因此,我會使用一些Photoshop處理的圖片顯示我想做的事情,所以每次我在這種情況下輸入一個命令,我將使用示例「命令一」,「命令二」&「命令三」,所以如果我點擊發送按鈕後,他們每個人應該像這樣apper:

enter image description here

所以,如果文本到達該黑條:

enter image description here

上面添加的文本應得到推在一個滾動視圖和每一個新的文本也將獲得滾動視圖的一部分,從而使您稍後可以滾動瀏覽您的命令。 我知道這是一個很長的帖子,我希望很清楚我想做什麼,有人會知道我該如何做到這一點。因此,在此先感謝:)

+0

提示:爲什麼使用** 2 **嵌套LinearLayouts而不是** 1 **單個RelativeLayout? –

+0

我不是新來的xml和android應用程序製作,對我來說它運行良好,所以我認爲我可以這樣做:S –

+0

好吧,嵌套佈局總的來說是避免的,如果你關心表演。永遠記住:越平坦,越好。 –

回答

1

對於此任務,您應該考慮使用ListView並在此視圖中添加每個命令作爲新行。它也會照顧滾動,你的文本不會與你的EditText混淆。

+0

這是另一種可能性。甚至更好,因爲通過這樣做,可以重新執行命令而不必再次鍵入它們。 –