Code completion in completion1.xml for marginBottom="50"^:
style : A reference to a custom style  [reference]
android:bufferType : Determines the minimum type that getText() will return.  [enum]
android:text : Text to display.  [string]
android:hint : Hint text to display when the text is empty.  [string]
android:textColor : Text color.  [color, reference]
android:textColorHighlight : Color of the text selection highlight.  [color, reference]
android:textColorHint : Color of the hint text.  [color, reference]
android:textAppearance : Base text color, typeface, size, and style.  [reference]
android:textSize : Size of the text.  [dimension]
android:textScaleX : Sets the horizontal scaling factor for the text.  [float]
android:typeface : Typeface (normal, sans, serif, monospace) for the text.  [enum]
android:textStyle : Style (bold, italic, bolditalic) for the text.  [flag]
android:fontFamily : Font family (named by string) for the text.  [string]
android:textColorLink : Text color for links.  [color, reference]
android:cursorVisible : Makes the cursor visible (the default) or invisible.  [boolean]
android:maxLines : Makes the TextView be at most this many lines tall.  [integer]
android:maxHeight : Makes the TextView be at most this many pixels tall.  [dimension]
android:lines : Makes the TextView be exactly this many lines tall.  [integer]
android:height : Makes the TextView be exactly this many pixels tall.  [dimension]
android:minLines : Makes the TextView be at least this many lines tall.  [integer]
android:minHeight : Makes the TextView be at least this many pixels tall.  [dimension]
android:maxEms : Makes the TextView be at most this many ems wide.  [integer]
android:maxWidth : Makes the TextView be at most this many pixels wide.  [dimension]
android:ems : Makes the TextView be exactly this many ems wide.  [integer]
android:width : Makes the TextView be exactly this many pixels wide.  [dimension]
android:minEms : Makes the TextView be at least this many ems wide.  [integer]
android:minWidth : Makes the TextView be at least this many pixels wide.  [dimension]
android:gravity : Specifies how to align the text by the view's x- and/or y-axis  when the text is smaller than the view.  [flag]
android:scrollHorizontally : Whether the text is allowed to be wider than the view (and therefore  can be scrolled horizontally).  [boolean]
android:password : Whether the characters of the field are displayed as password  dots instead of themselves. * Deprecated: Use inputType instead.  [boolean]
android:singleLine : Constrains the text to a single horizontally scrolling line instead  of letting it wrap onto multiple lines, and advances focus instead  of inserting a newline when you press the enter key. * Deprecated: This attribute is deprecated. Use "maxLines" instead  to change the layo...
android:enabled : Specifies whether the widget is enabled.  [boolean]
android:selectAllOnFocus : If the text is selectable, select it all when the view takes  focus.  [boolean]
android:includeFontPadding : Leave enough room for ascenders and descenders instead of using  the font ascent and descent strictly.  [boolean]
android:maxLength : Set an input filter to constrain the text length to the specified  number.  [integer]
android:shadowColor : Place a shadow of the specified color behind the text.  [color]
android:shadowDx : Horizontal offset of the shadow.  [float]
android:shadowDy : Vertical offset of the shadow.  [float]
android:shadowRadius : Radius of the shadow.  [float]
android:autoLink : Controls whether links such as urls and email addresses are automatically  found and converted to clickable links.  [flag]
android:linksClickable : If set to false, keeps the movement method from being set to  the link movement method even if autoLink causes links to be  found.  [boolean]
android:numeric : If set, specifies that this TextView has a numeric input method. * Deprecated: Use inputType instead.  [flag]
android:digits : If set, specifies that this TextView has a numeric input method  and that these specific characters are the ones that it will  accept.  [string]
android:phoneNumber : If set, specifies that this TextView has a phone number input  method. * Deprecated: Use inputType instead.  [boolean]
android:inputMethod : If set, specifies that this TextView should use the specified  input method (specified by fully-qualified class name). * Deprecated: Use inputType instead.  [string]
android:capitalize : If set, specifies that this TextView has a textual input method  and should automatically capitalize what the user types. * Deprecated: Use inputType instead.  [enum]
android:autoText : If set, specifies that this TextView has a textual input method  and automatically corrects some common spelling errors. * Deprecated: Use inputType instead.  [boolean]
android:editable : If set, specifies that this TextView has an input method. * Deprecated: Use inputType instead.  [boolean]
android:freezesText : If set, the text view will include its current complete text  inside of its frozen icicle in addition to meta-data such as  the current cursor position.  [boolean]
android:ellipsize : If set, causes words that are longer than the view is wide to  be ellipsized instead of broken in the middle.  [enum]
android:drawableTop : The drawable to be drawn above the text.  [color, reference]
android:drawableBottom : The drawable to be drawn below the text.  [color, reference]
android:drawableLeft : The drawable to be drawn to the left of the text.  [color, reference]
android:drawableRight : The drawable to be drawn to the right of the text.  [color, reference]
android:drawableStart : The drawable to be drawn to the start of the text.  [color, reference]
android:drawableEnd : The drawable to be drawn to the end of the text.  [color, reference]
android:drawablePadding : The padding between the drawables and the text.  [dimension]
android:lineSpacingExtra : Extra spacing between lines of text.  [dimension]
android:lineSpacingMultiplier : Extra spacing between lines of text, as a multiplier.  [float]
android:marqueeRepeatLimit : The number of times to repeat the marquee animation.  [integer, enum]
android:inputType : The type of data being placed in a text field, used to help an  input method decide how to let the user enter text.  [flag]
android:imeOptions : Additional features you can enable in an IME associated with  an editor to improve the integration with your application.  [flag]
android:privateImeOptions : An addition content type description to supply to the input method  attached to the text view, which is private to the implementation  of the input method.  [string]
android:imeActionLabel : Supply a value for EditorInfo.actionLabel used when an input  method is connected to the text view.  [string]
android:imeActionId : Supply a value for EditorInfo.actionId used when an input method  is connected to the text view.  [integer]
android:editorExtras : Reference to an "input-extras" XML resource containing additional  data to supply to an input method, which is private to the implementation  of the input method.  [reference]
android:textSelectHandleLeft : Reference to a drawable that will be used to display a text selection  anchor on the left side of a selection region.  [reference]
android:textSelectHandleRight : Reference to a drawable that will be used to display a text selection  anchor on the right side of a selection region.  [reference]
android:textSelectHandle : Reference to a drawable that will be used to display a text selection  anchor for positioning the cursor within text.  [reference]
android:textEditPasteWindowLayout : The layout of the view that is displayed on top of the cursor  to paste inside a TextEdit field.  [reference]
android:textEditNoPasteWindowLayout : Variation of textEditPasteWindowLayout displayed when the clipboard  is empty.  [reference]
android:textEditSidePasteWindowLayout : Used instead of textEditPasteWindowLayout when the window is  moved on the side of the insertion cursor because it would be  clipped if it were positioned on top.  [reference]
android:textEditSideNoPasteWindowLayout : Variation of textEditSidePasteWindowLayout displayed when the  clipboard is empty.  [reference]
android:textEditSuggestionItemLayout : Layout of the TextView item that will populate the suggestion  popup window.  [reference]
android:textCursorDrawable : Reference to a drawable that will be drawn under the insertion  cursor.  [reference]
android:textIsSelectable : Indicates that the content of a non-editable text can be selected.  [boolean]
android:textAllCaps : Present the text in ALL CAPS.  [boolean]
android:id : Supply an identifier name for this view, to later retrieve it  with View.findViewById() or Activity.findViewById().  [reference]
android:tag : Supply a tag for this view containing a String, to be retrieved  later with View.getTag() or searched for with View.findViewWithTag() .  [string]
android:scrollX : The initial horizontal scroll offset, in pixels.  [dimension]
android:scrollY : The initial vertical scroll offset, in pixels.  [dimension]
android:background : A drawable to use as the background.  [color, reference]
android:padding : Sets the padding, in pixels, of all four edges.  [dimension]
android:paddingLeft : Sets the padding, in pixels, of the left edge; see padding.  [dimension]
android:paddingTop : Sets the padding, in pixels, of the top edge; see padding.  [dimension]
android:paddingRight : Sets the padding, in pixels, of the right edge; see padding.  [dimension]
android:paddingBottom : Sets the padding, in pixels, of the bottom edge; see padding.  [dimension]
android:paddingStart : Sets the padding, in pixels, of the start edge; see padding.  [dimension]
android:paddingEnd : Sets the padding, in pixels, of the end edge; see padding.  [dimension]
android:focusable : Boolean that controls whether a view can take focus.  [boolean]
android:focusableInTouchMode : Boolean that controls whether a view can take focus while in  touch mode.  [boolean]
android:visibility : Controls the initial visibility of the view.  [enum]
android:fitsSystemWindows : Boolean internal attribute to adjust view layout based on system  windows such as the status bar.  [boolean]
android:scrollbars : Defines which scrollbars should be displayed on scrolling or  not.  [flag]
android:scrollbarStyle : Controls the scrollbar style and position.  [enum]
android:isScrollContainer : Set this if the view will serve as a scrolling container, meaing  that it can be resized to shrink its overall window so that there  will be space for an input method.  [boolean]
android:fadeScrollbars : Defines whether to fade out scrollbars when they are not in use.  [boolean]
android:scrollbarFadeDuration : Defines the delay in milliseconds that a scrollbar takes to fade  out.  [integer]
android:scrollbarDefaultDelayBeforeFade : Defines the delay in milliseconds that a scrollbar waits before  fade out.  [integer]
android:scrollbarSize : Sets the width of vertical scrollbars and height of horizontal  scrollbars.  [dimension]
android:scrollbarThumbHorizontal : Defines the horizontal scrollbar thumb drawable.  [reference]
android:scrollbarThumbVertical : Defines the vertical scrollbar thumb drawable.  [reference]
android:scrollbarTrackHorizontal : Defines the horizontal scrollbar track drawable.  [reference]
android:scrollbarTrackVertical : Defines the vertical scrollbar track drawable.  [reference]
android:scrollbarAlwaysDrawHorizontalTrack : Defines whether the horizontal scrollbar track should always  be drawn.  [boolean]
android:scrollbarAlwaysDrawVerticalTrack : Defines whether the vertical scrollbar track should always be  drawn.  [boolean]
android:fadingEdge : This attribute is deprecated and will be ignored as of API level  14 (ICE_CREAM_SANDWICH).  [flag]
android:requiresFadingEdge : Defines which edges should be faded on scrolling.  [flag]
android:fadingEdgeLength : Defines the length of the fading edges.  [dimension]
android:nextFocusLeft : Defines the next view to give focus to when the next focus is FOCUS_LEFT.  [reference]
android:nextFocusRight : Defines the next view to give focus to when the next focus is FOCUS_RIGHT If the reference refers to a view that does not exist or is  part of a hierarchy that is invisible, a java.lang.RuntimeException will result when the  reference is accessed.  [reference]
android:nextFocusUp : Defines the next view to give focus to when the next focus is FOCUS_UP If the reference refers to a view that does not exist or is  part of a hierarchy that is invisible, a java.lang.RuntimeException will result when the  reference is accessed.  [reference]
android:nextFocusDown : Defines the next view to give focus to when the next focus is FOCUS_DOWN If the reference refers to a view that does not exist or is  part of a hierarchy that is invisible, a java.lang.RuntimeException will result when the  reference is accessed.  [reference]
android:nextFocusForward : Defines the next view to give focus to when the next focus is FOCUS_FORWARD If the reference refers to a view that does not exist or is  part of a hierarchy that is invisible, a java.lang.RuntimeException will result when the  reference is accessed.  [reference]
android:clickable : Defines whether this view reacts to click events.  [boolean]
android:longClickable : Defines whether this view reacts to long click events.  [boolean]
android:saveEnabled : If unset, no state will be saved for this view when it is being  frozen.  [boolean]
android:filterTouchesWhenObscured : Specifies whether to filter touches when the view's window is  obscured by another visible window.  [boolean]
android:drawingCacheQuality : Defines the quality of translucent drawing caches.  [enum]
android:keepScreenOn : Controls whether the view's window should keep the screen on  while visible.  [boolean]
android:duplicateParentState : When this attribute is set to true, the view gets its drawable  state (focused, pressed, etc.) from its direct parent rather  than from itself.  [boolean]
android:minHeight : Defines the minimum height of the view.
android:minWidth : Defines the minimum width of the view.
android:soundEffectsEnabled : Boolean that controls whether a view should have sound effects  enabled for events such as clicking and touching.  [boolean]
android:hapticFeedbackEnabled : Boolean that controls whether a view should have haptic feedback  enabled for events such as long presses.  [boolean]
android:contentDescription : Defines text that briefly describes content of the view.  [string]
android:onClick : Name of the method in this View's context to invoke when the  view is clicked.  [string]
android:overScrollMode : Defines over-scrolling behavior.  [enum]
android:alpha : alpha property of the view, as a value between 0 (completely  transparent) and 1 (completely opaque).  [float]
android:translationX : translation in x of the view.  [dimension]
android:translationY : translation in y of the view.  [dimension]
android:transformPivotX : x location of the pivot point around which the view will rotate  and scale.  [dimension]
android:transformPivotY : y location of the pivot point around which the view will rotate  and scale.  [dimension]
android:rotation : rotation of the view, in degrees.  [float]
android:rotationX : rotation of the view around the x axis, in degrees.  [float]
android:rotationY : rotation of the view around the y axis, in degrees.  [float]
android:scaleX : scale of the view in the x direction.  [float]
android:scaleY : scale of the view in the y direction.  [float]
android:verticalScrollbarPosition : Determines which side the vertical scroll bar should be placed  on.  [enum]
android:layerType : Specifies the type of layer backing this view.  [enum]
android:layoutDirection : Defines the direction of layout drawing.  [enum]
android:textDirection : Direction of the text.  [integer, enum]
android:textAlignment : Alignment of the text.  [integer, enum]
android:importantForAccessibility : Controls how this View is important for accessibility which is  if it fires accessibility events and if it is reported to accessibility  services that query the screen.  [integer, enum]
android:layout_width : Specifies the basic width of the view.  [dimension, enum]
android:layout_height : Specifies the basic height of the view.  [dimension, enum]
android:layout_weight : [float]
android:layout_gravity : Standard gravity constant that a child can supply to its parent.  [flag]
android:layout_margin : Specifies extra space on the left, top, right and bottom sides  of this view.  [dimension]
android:layout_marginLeft : Specifies extra space on the left side of this view.  [dimension]
android:layout_marginTop : Specifies extra space on the top side of this view.  [dimension]
android:layout_marginRight : Specifies extra space on the right side of this view.  [dimension]
android:layout_marginBottom : Specifies extra space on the bottom side of this view.  [dimension]
android:layout_marginStart : Specifies extra space on the start side of this view.  [dimension]
android:layout_marginEnd : Specifies extra space on the end side of this view.  [dimension]
