๐ Hey
I'm a software engineer, I mainly work with Swift and Typescript + React. Once I close my laptop I get into my workshop for some hand tools woodworking ๐จ
AMBubbleTableView
License: MIT License
๐ Hey
I'm a software engineer, I mainly work with Swift and Typescript + React. Once I close my laptop I get into my workshop for some hand tools woodworking ๐จ
Hey I am using your controller and everything seems great except for a small issue. It seems that when I send a multiple line text and press send, the scrolling doesn't work properly and cuts off my latest sent message. Could you look into this? Thanks!
Not working good on ios version.
I really like to use your library! But I tried to use the TableView on the iPad but the bubbles also appear on the right site of the cell. If you include "[self.tableView reloadData]" inside "scrollToBottomAnimated", all bubbles will be set to the right position (completely left or right). ScrollToBottomAnimated will also be called when I try to refresh the tableview after inserting new data, but they only will be layouted right when the keyboard pops out. Is there a way to make it work?
Ran the demo project with a 3.5 default simulator.
Came to try it in 4inch and it exits on Thread 4: EXC_BAD_ACCESS (code=2, address=0x0)
Hi all, I need to change Send button...
there are only 2 options
AMOptionsImageButton
AMOptionsImageButtonHighlight
but I need chande all, I want insert custom Image, without text.
Is it possible?
Thanks
Is it possible to have the sending bubble messages text colour to be white and the receiving bubble messages being black?
In - (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
of AMBubbleTableViewController
should be a check for text and stringDate is not equal to nil. Something like an assert. At the moment the error message is very cryptic and I've had to spend a lot of time to find the issue (had no idea, that my data source had an issue and the error message doesn't say anything of nil).
When hiding the keyboard inside a tabbar controller, the bottom part gets screwed.
The "send" bar disappears along with the last message.
It crashes on line 39: [self.bubbleAccessory setOptions:options]; in AMBubbleTableCell.m because of the custom setter for "options" in both AMBubbleAccessoryView and AMBubbleFlatAccessoryView.
If you comment out the custom setter and let Xcode synthesize it, it works fine in Release builds too.
To reproduce this:
The dataSource protocol says that it's optional but the code that calculates the height of a row uses it without checking if it's there.
This patch fixes the problem:
--- a/vendor/AMBubbleTableView/AMBubbleTableViewController.m
+++ b/vendor/AMBubbleTableView/AMBubbleTableViewController.m
@@ -233,21 +233,24 @@
}];
}
return cell;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
AMBubbleCellType type = [self.dataSource cellTypeForRowAtIndexPath:indexPath];
NSString* text = [self.dataSource textForRowAtIndexPath:indexPath];
- NSString* username = [self.dataSource usernameForRowAtIndexPath:indexPath];
+ NSString* username = @"";
+ if ([self.dataSource respondsToSelector:@selector(usernameForRowAtIndexPath:)]) {
+ username = [self.dataSource usernameForRowAtIndexPath:indexPath];
+ }
if (type == AMBubbleCellTimestamp) {
return [self.options[AMOptionsTimestampHeight] floatValue];
}
// Set MessageCell height.
CGSize size = [text sizeWithFont:self.options[AMOptionsBubbleTextFont]
constrainedToSize:CGSizeMake(kMessageTextWidth, CGFLOAT_MAX)
lineBreakMode:NSLineBreakByWordWrapping];
Timestamp items aligned to the left (not centered) in the first rendering but when re-render (scroll-up until hiding the timestamp then scroll-down) they appears centered.
After the keyboard comes down, the insets of the scroll view are not returning to normal and the first message keeps hidden.
I've commented the following line in AMBubbleTableViewController and the problem was solved:
//self.tableView.contentInset = insets;
//self.tableView.scrollIndicatorInsets = insets;
Not sure what the consequences are thought.
Hi, i've tried your library and i've found a little problem in your demo. Once application run, staying to the top of the tableview, i rotate the iPhone Simulator in all possible orientation, so, returning in portrait mode and scrolling to the bottom, the last sent message ( on the right side ) is anchored to the left side of screen, under last receiver user message. Scrolling the tableview, hiding that message and showing again it, it return on correct right side of screen. i've tried to user iPhone 6.1 Simulator.
Is there a way to display images inside the AMBubbleTableView?
I installed demo project on my iphone4 with ios7 version but the message is not displayed all in the block... Each block have vertical scroller.
The problem is present when I use xcode 4.* and run on ios device
Help me please :(
thanks
After tapping return key several times can't see the cursor. only happening in the ios 7. ios 6 its working smoothly. please fix this immediately. thanks
Having the controller under a navigationcontroller, it works fine when it loads, but, when I write a message and send it (the table is updated), when I scroll to the top there is a portion hidden under the navigation bar
Would be fine to have something like that already integrated in the view controller.
I tried to run the Framework on iOS 5.0 and while building the compiler stopped inside the Method "initWithOptions:reuseIdentifier:" in the class AMBubbleTableCell.
Here is the method where it stops:
[self.bubbleAccessory setOptions:options];
I tried to change the Font that will be set through the options to systemFont but it also didn't work. It looks like it doesn't work because of the options. Maybe you have a hint.
First of all i want to say that you did great job on this!
I have to suggestions to make:
a) It would be great if there was some kind of "Pull-to-refresh" function.
b) Image attachments
p.s. Is there a way to show the full date of the text written instead of the time?
Can you add the link detection option to the cell.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.