Ejemplo n.º 1
0
        protected override void OnElementChanged(ElementChangedEventArgs <TabbedPage> e)
        {
            base.OnElementChanged(e);

            if (e.NewElement == null || e.OldElement != null)
            {
                return;
            }

            TabLayout tablayout = (TabLayout)ViewGroup.GetChildAt(1);

            Android.Views.ViewGroup vgroup = (Android.Views.ViewGroup)tablayout.GetChildAt(0);
            for (int i = 0; i < vgroup.ChildCount; i++)
            {
                Android.Views.ViewGroup vvgroup = (Android.Views.ViewGroup)vgroup.GetChildAt(i);
                Typeface fontFace = Typeface.CreateFromAsset(this.Context.Assets, "IranSans.ttf");
                for (int j = 0; j < vvgroup.ChildCount; j++)
                {
                    Android.Views.View vView = (Android.Views.View)vvgroup.GetChildAt(j);
                    if (vView.GetType() == typeof(Android.Support.V7.Widget.AppCompatTextView) || vView.GetType() == typeof(Android.Widget.TextView))
                    {
                        //here change textview style
                        TextView txtView = (TextView)vView;
                        txtView.TextSize = 14f;
                        txtView.SetTypeface(fontFace, TypefaceStyle.Normal);
                    }
                }
            }
        }
 /// <summary>
 /// Traverses document tree to attach listeners to view items marked with "Number" or "Operation" tags.
 /// </summary>
 /// <param name="view"></param>
 private void AttachListeners(Android.Views.View view)
 {
     Android.Views.ViewGroup group = view as Android.Views.ViewGroup;
     if (group != null)
     {
         for (int i = 0; i < group.ChildCount; i++)
         {
             var child      = group.GetChildAt(i);
             var childGroup = child as Android.Views.ViewGroup;
             if (childGroup != null)
             {
                 AttachListeners(childGroup);
             }
             else
             {
                 if (child.Tag != null)
                 {
                     string tag = child.Tag.ToString();
                     if (tag.CompareTo(Globals.CALC_NUMBER) == 0)
                     {
                         child.Click += Number_Click;
                     }
                     else if (tag.CompareTo(Globals.CALC_OPERATION) == 0)
                     {
                         child.Click += Operation_Click;
                     }
                 }
             }
         }
     }
 }
Ejemplo n.º 3
0
        public void WireWebView <T>(T webView)
        {
            WebView.SetWebContentsDebuggingEnabled(true);

            if (webView.GetType() == typeof(WebView))
            {
                _webView = webView as WebView;
                _webView.ClearCache(true);
                _webView.Settings.JavaScriptEnabled = true;

                _webViewClient = new BridgeWebViewClient();
                _webView.SetWebViewClient(_webViewClient);
            }
            else
            {
                _view = webView as Android.Views.ViewGroup;

                _webView = new WebView(_view.Context);
                _webView.ClearCache(true);
                _webView.Settings.JavaScriptEnabled = true;
                _webView.Settings.DomStorageEnabled = true;
                _webView.LayoutParameters           = new LayoutParams(LayoutParams.WrapContent, LayoutParams.WrapContent);

                _webViewClient = new BridgeWebViewClient();
                _webView.SetBackgroundColor(Android.Graphics.Color.Pink);
                _view.AddView(_webView);
                _webView.SetWebViewClient(_webViewClient);

                var button = new Button(_view.Context);
                button.Text = "My Dynamic Button";
                button.SetBackgroundColor(Android.Graphics.Color.Brown);
                button.LayoutParameters = new LayoutParams(LayoutParams.MatchParent, LayoutParams.MatchParent);
                _view.AddView(button);
            }
        }
Ejemplo n.º 4
0
        public override View NewView(Context context, Cursor cursor, ViewGroup parent)
        {
            View convertView = mInflater.Inflate(Resource.Layout.ImageSelect_PhotoPickGridListItem, parent, false);

            viewHolder = new ViewHolder(convertView, mCollection);
            return(convertView);
        }
Ejemplo n.º 5
0
 public LineHeightForEditText(Android.Views.ViewGroup container, AView control, Element element)
 {
     _container    = container;
     _editText     = control as EditText;
     _orgMultiple  = _editText.LineSpacingMultiplier;
     _formsElement = element as VisualElement;
 }
Ejemplo n.º 6
0
        internal static IEnumerable <T> GetChildrenOfType <T>(this AViewGroup self)
            where T : AView
        {
            for (int i = 0; i < self.ChildCount; i++)
            {
                AView?child = self.GetChildAt(i);
                if (child == null)
                {
                    continue;
                }


                if (child is T typedChild)
                {
                    yield return(typedChild);
                }

                if (child is AViewGroup childAsViewGroup)
                {
                    IEnumerable <T> myChildren = childAsViewGroup.GetChildrenOfType <T>();
                    foreach (T nextChild in myChildren)
                    {
                        yield return(nextChild);
                    }
                }
            }
        }
        public override Android.Views.View GetView(int position, Android.Views.View convertView
                                                   , Android.Views.ViewGroup parent)
        {
            Com.Zhy.Adapter.Abslistview.Base.ItemViewDelegate <T> itemViewDelegate = mItemViewDelegateManager
                                                                                     .GetItemViewDelegate(mDatas[position], position);
            int layoutId = itemViewDelegate.GetItemViewLayoutId();

            Com.Zhy.Adapter.Abslistview.ViewHolder viewHolder = null;
            if (convertView == null)
            {
                Android.Views.View itemView = Android.Views.LayoutInflater.From(mContext).Inflate
                                                  (layoutId, parent, false);
                viewHolder = new Com.Zhy.Adapter.Abslistview.ViewHolder(mContext, itemView, parent
                                                                        , position);
                viewHolder.mLayoutId = layoutId;
                OnViewHolderCreated(viewHolder, viewHolder.GetConvertView());
            }
            else
            {
                viewHolder           = (ViewHolder)convertView.Tag;
                viewHolder.mPosition = position;
            }
            Jbox <T> box = (Jbox <T>)GetItem(position);

            Convert(viewHolder, box.Value, position);
            return(viewHolder.GetConvertView());
        }
        public override Java.Lang.Object InstantiateItem(Android.Views.ViewGroup container, int position)
        {
            Fragment fragment = (Fragment)base.InstantiateItem(container, position);

            registeredFragments.Put(position, fragment);
            return(fragment);
        }
Ejemplo n.º 9
0
        public void DoEndSession()
        {
            lock (syncLock)
            {
                if (Subscriber != null)
                {
                    if (Subscriber.SubscribeToAudio)
                    {
                        Subscriber.SubscribeToAudio = false;
                    }
                    if (Subscriber.SubscribeToVideo)
                    {
                        Subscriber.SubscribeToVideo = false;
                    }

                    Subscriber.Connected     -= OnSubscriberDidConnectToStream;
                    Subscriber.VideoDisabled -= OnSubscriberVideoDisabled;
                    Subscriber.VideoEnabled  -= OnSubscriberVideoEnabled;

                    Subscriber.Dispose();
                    Subscriber = null;
                }

                if (Publisher != null)
                {
                    if (Publisher.PublishAudio)
                    {
                        Publisher.PublishAudio = false;
                    }
                    if (Publisher.PublishVideo)
                    {
                        Publisher.PublishVideo = false;
                    }
                    Publisher.Dispose();
                    Publisher = null;
                }

                if (Session != null)
                {
                    Session.ConnectionDestroyed -= OnConnectionDestroyed;
                    Session.Connected           -= OnDidConnect;
                    Session.StreamReceived      -= OnStreamCreated;
                    Session.StreamDropped       -= OnStreamDestroyed;

                    Session.Disconnect();
                    Session.Dispose();
                    Session = null;
                }

                if (role != OpenTokRole.SUBSCRIBER)
                {
                    DeactivateStreamContainer(PublisherContianer);
                    PublisherContianer = null;
                }

                DeactivateStreamContainer(SubscriberContainer);
                SubscriberContainer = null;
            }
        }
Ejemplo n.º 10
0
        private Bitmap ConvertViewToBitMap(droid.Views.ViewGroup view)
        {
            Bitmap bitmap = Bitmap.CreateBitmap(200, 400, Bitmap.Config.Argb8888);
            Canvas canvas = new Canvas(bitmap);

            canvas.DrawColor(droid.Graphics.Color.White);
            view.Draw(canvas);
            return(bitmap);
        }
Ejemplo n.º 11
0
            public override AView OnCreateView(ALayoutInflater inflater, AViewGroup container, Bundle savedInstanceState)
            {
                ScopedMauiContext = _mauiContext.MakeScoped(layoutInflater: inflater, fragmentManager: ChildFragmentManager, registerNewNavigationRoot: true);
                _ = _window.ToHandler(ScopedMauiContext);
                var rootView = ScopedMauiContext.GetNavigationRootManager().RootView;

                rootView.LayoutParameters = new LinearLayoutCompat.LayoutParams(500, 500);
                return(rootView);
            }
Ejemplo n.º 12
0
            public override void DestroyItem(Android.Views.ViewGroup container, int position, Java.Lang.Object @object)
            {
                var pager = (ViewPager)container;
                var view  = (Android.Views.View)@object;

                pager.RemoveView(view);
                //[Android] Out of memories(FFImageLoading + CarouselView) #279
                view.UnbindDrawables();
                view.Dispose();
            }
Ejemplo n.º 13
0
        void DeactivateStreamContainer(Android.Views.ViewGroup container)
        {
            if (container == null)
            {
                return;
            }

            container.RemoveAllViews();
            container.SetBackgroundColor(Android.Graphics.Color.Transparent);
        }
Ejemplo n.º 14
0
        public override View NewView(Context context, Cursor cursor, ViewGroup parent)
        {
            View convertView = mInflater.Inflate(Resource.Layout.ImageSelect_PhotoPickListItem, parent, false);

            viewHolder            = new ViewHolder();
            viewHolder.textView   = (TextView)convertView.FindViewById(Resource.Id.foldName);
            viewHolder.photoCount = (TextView)convertView.FindViewById(Resource.Id.photoCount);
            convertView.Tag       = viewHolder;
            return(convertView);
        }
Ejemplo n.º 15
0
 protected internal virtual void SetListener(Android.Views.ViewGroup parent, Com.Zhy.Adapter.Recyclerview.Base.ViewHolder
                                             viewHolder, int viewType)
 {
     if (!IsEnabled(viewType))
     {
         return;
     }
     viewHolder.GetConvertView().SetOnClickListener(new _OnClickListener_63(this, viewHolder));
     viewHolder.GetConvertView().SetOnLongClickListener(new _OnLongClickListener_73(this
                                                                                    , viewHolder));
 }
        public LineHeightForTextView(Android.Views.ViewGroup container, AView control, Element element)
        {
            _container    = container ?? control;
            _textView     = control as TextView;
            _orgMultiple  = _textView.LineSpacingMultiplier;
            _preMultiple  = _orgMultiple;
            _formsElement = element as VisualElement;

            //最初からHeightRequestが設定されているか
            _isFixedHeight = _formsElement.HeightRequest >= 0d;
        }
Ejemplo n.º 17
0
        Task RunWindowTest <THandler>(IWindow window, Func <THandler, Task> action)
            where THandler : class, IElementHandler
        {
            return(InvokeOnMainThreadAsync(async() =>
            {
                AViewGroup rootView = MauiContext.Context.GetActivity().Window.DecorView as AViewGroup;
                var linearLayoutCompat = new LinearLayoutCompat(MauiContext.Context);

                var fragmentManager = MauiContext.GetFragmentManager();
                var viewFragment = new WindowTestFragment(MauiContext, window);

                try
                {
                    linearLayoutCompat.Id = AView.GenerateViewId();
                    fragmentManager
                    .BeginTransaction()
                    .Add(linearLayoutCompat.Id, viewFragment)
                    .Commit();

                    rootView.AddView(linearLayoutCompat);
                    await viewFragment.FinishedLoading;

                    if (typeof(THandler).IsAssignableFrom(window.Handler.GetType()))
                    {
                        await action((THandler)window.Handler);
                    }
                    else if (typeof(THandler).IsAssignableFrom(window.Content.Handler.GetType()))
                    {
                        await action((THandler)window.Content.Handler);
                    }
                }
                finally
                {
                    if (window.Handler != null)
                    {
                        window.Handler.DisconnectHandler();
                    }

                    rootView.RemoveView(linearLayoutCompat);

                    fragmentManager
                    .BeginTransaction()
                    .Remove(viewFragment)
                    .Commit();

                    await linearLayoutCompat.OnUnloadedAsync();
                    if (viewFragment.View != null)
                    {
                        await viewFragment.View.OnUnloadedAsync();
                    }
                }
            }));
        }
Ejemplo n.º 18
0
        public void DoSetPublisherContainer(object container)
        {
            var streamContainer = (Android.Views.ViewGroup)container;

            Android.Views.View streamView = null;

            PublisherContianer = streamContainer;
            if (Publisher != null)
            {
                streamView = Publisher.View;
            }

            ActivateStreamContainer(streamContainer, streamView);
        }
Ejemplo n.º 19
0
        public void DoSetSubscriberContainer(object container)
        {
            var streamContainer = (Android.Views.ViewGroup)container;

            Android.Views.View streamView = null;

            SubscriberContainer = streamContainer;
            if (Subscriber != null)
            {
                streamView = Subscriber.View;
            }

            ActivateStreamContainer(streamContainer, streamView);
        }
        void Control_Click(object sender, System.EventArgs e)
        {
            // The Forms Page that you want to create image
            var formsView = new FormsPage();

            //Converting forms page to native view
            AndroidView = FormsToNativeDroid.ConvertFormsToNative(formsView.Content, new Rectangle(0, 0, 400, 800));

            // Converting View to BitMap
            var bitmap = ConvertViewToBitMap(AndroidView);

            // Saving image in mobile local storage
            SaveImage(bitmap);
        }
Ejemplo n.º 21
0
        public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType)
        {
            var context = parent.Context;

            if (viewType == TextView)
            {
                var view = new TextView(context);
                return(new TextViewHolder(view));
            }

            var itemContentView = new ItemContentView(parent.Context);

            return(new TemplatedItemViewHolder(itemContentView, ItemsView.ItemTemplate));
        }
Ejemplo n.º 22
0
        public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType)
        {
            var context = parent.Context;

            if (viewType == ItemViewType.TextItem)
            {
                var view = new TextView(context);
                return(new TextViewHolder(view, IsSelectionEnabled(parent, viewType)));
            }

            var itemContentView = _createItemContentView.Invoke(ItemsView, context);

            return(new TemplatedItemViewHolder(itemContentView, ItemsView.ItemTemplate, IsSelectionEnabled(parent, viewType)));
        }
Ejemplo n.º 23
0
            public override AView OnCreateView(ALayoutInflater inflater, AViewGroup container, Bundle savedInstanceState)
            {
                ScopedMauiContext = _mauiContext.MakeScoped(layoutInflater: inflater, fragmentManager: ChildFragmentManager, registerNewNavigationRoot: true);
                var handler = (WindowHandlerStub)_window.ToHandler(ScopedMauiContext);

                var decorView = RequireActivity().Window.DecorView;

                handler.PlatformViewUnderTest.LayoutParameters = new FitWindowsFrameLayout.LayoutParams(AViewGroup.LayoutParams.MatchParent, AViewGroup.LayoutParams.MatchParent);

                FakeActivityRootView = new FakeActivityRootView(ScopedMauiContext.Context);
                FakeActivityRootView.LayoutParameters = new LinearLayoutCompat.LayoutParams(AViewGroup.LayoutParams.MatchParent, AViewGroup.LayoutParams.MatchParent);
                FakeActivityRootView.AddView(handler.PlatformViewUnderTest);

                return(FakeActivityRootView);
            }
Ejemplo n.º 24
0
        public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType)
        {
            if (viewType == GROUP_HEADER_VIEW_TYPE)
            {
                return(new WFGroupHeaderViewHolder(CreateGroupHeaderView(), OnClick));
            }

            if (viewType == HEADER_VIEW_TYPE)
            {
                var nativeView = Element.Header.ToAndroidView(new Rectangle(0, 0, ItemWidth, 0));
                return(new WFHeaderViewHolder(nativeView));
            }

            return(new WFViewHolder(CreateItemView(), OnClick));
        }
Ejemplo n.º 25
0
        public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType)
        {
            var context = parent.Context;

            if (viewType == ItemViewType.Header)
            {
                return(CreateHeaderFooterViewHolder(ItemsView.Header, ItemsView.HeaderTemplate, context));
            }

            if (viewType == ItemViewType.Footer)
            {
                return(CreateHeaderFooterViewHolder(ItemsView.Footer, ItemsView.FooterTemplate, context));
            }

            return(base.OnCreateViewHolder(parent, viewType));
        }
 public override Java.Lang.Object InstantiateItem(ViewGroup container, int position)
 {
     Context context = container.Context;
     LayoutInflater inflater = LayoutInflater.From(context);
     View view = null;
     if (position == 0) {
         view = inflater.Inflate (Resource.Layout.samples,container, false);
     }else{
         view = inflater.Inflate (Resource.Layout.item_font, container, false);
         RecyclerView recyclerView = view.FindViewById<RecyclerView> (Resource.Id.recyclerView);
         int nbColumns = AndroidUtils.getScreenSize ((Activity)context).width / context.Resources.GetDimensionPixelSize (Resource.Dimension.item_width);
         recyclerView.SetLayoutManager (new GridLayoutManager (context, nbColumns));
         recyclerView.SetAdapter (new IconAdapter (fonts [position-1].Value.Characters));
     }
     container.AddView(view);
     return view;
 }
Ejemplo n.º 27
0
        void ActivateStreamContainer(Android.Views.ViewGroup container, Android.Views.View view)
        {
            DeactivateStreamContainer(container);
            if (container == null || view == null)
            {
                return;
            }

            if (view.Parent != null)
            {
                (view.Parent as Android.Views.ViewGroup).RemoveView(view);
            }

            var layoutParams = new FrameLayout.LayoutParams(Android.Views.ViewGroup.LayoutParams.MatchParent, Android.Views.ViewGroup.LayoutParams.MatchParent);

            container.AddView(view, layoutParams);
        }
Ejemplo n.º 28
0
        public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType)
        {
            var context = parent.Context;

            // Does the ItemsView have a DataTemplate?
            var template = ItemsView.ItemTemplate;

            if (template == null)
            {
                // No template, just use the ToString view
                var view = new TextView(context);
                return(new TextViewHolder(view));
            }

            var itemContentView = new ItemContentView(parent.Context);

            return(new TemplatedItemViewHolder(itemContentView, template));
        }
Ejemplo n.º 29
0
    public override Android.Views.View GetView(int position, Android.Views.View convertView,
                                               Android.Views.ViewGroup parent)
    {
        ViewHolder vh;
        var        view = convertView;

        if (view == null)
        {
            view = Activity.LayoutInflater.Inflate(Resource.Layout.list_item_categories_articles_configuration,
                                                   false);
            vh = new ViewHolder(list);
            vh.Initialize(view);
            view.Tag = vh;
        }
        vh = view.Tag as ViewHolder;
        vh.Bind(position);
        return(view);
    }
Ejemplo n.º 30
0
        public AView GetCell(ContentCell formsCell, ContentCellContainer nativeCell, Android.Views.ViewGroup parent, Context context)
        {
            Performance.Start(out string reference);

            if (nativeCell.ContentCell != null)
            {
                ClearPropertyChanged(nativeCell);
            }

            nativeCell.ContentCell = formsCell;

            SetUpPropertyChanged(nativeCell);

            nativeCell.UpdateNativeCell();

            Performance.Stop(reference);

            return(nativeCell);
        }
Ejemplo n.º 31
0
        /// <summary>
        /// Override of the <see cref="CellRenderer"/> GetCellCore method, used to apply any custom
        /// settings to the Android platform-specific cell display element.
        /// </summary>
        /// <returns>The Android platform-specific cell display element after applying any custom settings to it</returns>
        /// <param name="item">The <see cref="T:Xamarin.Forms.Cell"/> instance whose properties need to be transferred
        /// from</param>
        /// <param name="convertView">A previously-created Android platform-specific display element if this cell has
        /// been rendered before</param>
        /// <param name="parent">The parent Android view container for the cell</param>
        /// <param name="context">The Android context that should be used for retrieving assets</param>
        protected override AView GetCellCore(Cell item, AView convertView, AViewGroup parent, Context context)
        {
            var cell = (SwitchCell)Cell;

            if ((_view = convertView as SwitchCompatCellView) == null)
            {
                _view = new SwitchCompatCellView(context, item);
            }

            _view.Cell = cell;

            UpdateText();
            UpdateChecked();
            UpdateHeight();
            UpdateIsEnabled(_view, cell);

            DroidXFGlossSwitchCompatCellRenderer.UpdateProperties(item, _view);
            return(_view);
        }
 public override void DestroyItem(ViewGroup container, int position, Java.Lang.Object objectValue)
 {
     container.RemoveView ((View)objectValue);
 }