Giter VIP home page Giter VIP logo

Comments (15)

nathantannar4 avatar nathantannar4 commented on June 20, 2024

Could you describe what animation you are seeing and how it differs from your expectations? Or attach a .gif?

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

out

I don't think this is normal

from messageviewcontroller.

BasThomas avatar BasThomas commented on June 20, 2024

That indeed does not look normal. Can you post some of your code, and explain when this behavior occurs?

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

@BasThomas This animation appears when this particular collectionView or tableview appear, here is the slow motion GIF of it
vv

and the code is nothing fancy. just a normal tableView.

import UIKit
import MessageViewController

class ViewController: MessageViewController {
    let tableView = UITableView()

    override func viewDidLoad() {
        super.viewDidLoad()
        setup(scrollView: tableView)
        // Change the appearance of the text view and its content
        messageView.inset = UIEdgeInsets(top: 16, left: 16, bottom: 16, right: 16)
        messageView.textView.placeholderText = "New message..."
        messageView.textView.placeholderTextColor = .lightGray
        messageView.font = .systemFont(ofSize: 17)
        messageView.backgroundColor = .yellow
        self.borderColor = .red
        
        // Setup the button using text or an icon
        messageView.setButton(title: "Send", for: .normal, position: .right)
        messageView.rightButtonTint = .blue
        
        tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell")
        tableView.dataSource = self
        
    }
}

extension ViewController: UITableViewDataSource {
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 5
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
        cell.backgroundColor = .green
        return cell
    }
}

from messageviewcontroller.

nathantannar4 avatar nathantannar4 commented on June 20, 2024

I believe changing messageView.inset and calling messageView.setButton will trigger a new layout is needed, try calling layoutIfNeeded at the end of viewDidLoad

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

@nathantannar4 Not working. I tried calling on

messageView.layoutIfNeeded()
tableView.layoutIfNeeded()
self.view.layoutIfNeeded()

I upload the code example here
https://github.com/lohenyumnam/MessageViewControllerTest

from messageviewcontroller.

nathantannar4 avatar nathantannar4 commented on June 20, 2024

I think this is only present when you set MessagesViewController as the root of a UIWindow launching. It seems to be animating the layout. When I put super.viewDidLoad() and your setup code in UIView.performWithoutAnimation { } the issue goes away. Or it could be something in MessagesViewController, haven't looked super deep into it

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

It's not working for me. @nathantannar4 even with this code

UIView.performWithoutAnimation {
            self.setup(scrollView: tableView)
        }

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

@BasThomas @nathantannar4 I think this problem is a bug

from messageviewcontroller.

nathantannar4 avatar nathantannar4 commented on June 20, 2024

@lohenyumnam If you refer to my last comment I meant ALL setup code in viewDidLoad, not just the scroll view setup.

Im not sure how much of a bug this would be, as its only reproducible during app launch. Do you have a specific use case for why you're using MessagesViewController as your root vc?

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

@nathantannar4 I tried putting all the code inside the UIView.performWithoutAnimation , got the same result.
And as for root vc the animation still occurs even if it's not root vc.

msg

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

This Unusual animation doesn't seem to occur in the example project, so what I did is I copy the example's ViewController code to my ViewController and here is the result. we can see the same animation.

ee

And I didn't stop, there just to make sure, this time I copy my ViewController's code to example's ViewController and here is the result

example

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

Ok here is the thing this problem seems to go away if I install from master

pod 'MessageViewController', :git => 'https://github.com/GitHawkApp/MessageViewController.git', :branch => 'master'

from messageviewcontroller.

nathantannar4 avatar nathantannar4 commented on June 20, 2024

Possibly fixed in https://github.com/GitHawkApp/MessageViewController/pull/72 then?

from messageviewcontroller.

lohenyumnam avatar lohenyumnam commented on June 20, 2024

@nathantannar4 I am not sure, but master branch doesn't seems to have the problem.
is there any reason why the default pod version is not pointing to the latest version ?

from messageviewcontroller.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.